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

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

Info

Publication number
RU2271566C2
RU2271566C2 RU2002120499/09A RU2002120499A RU2271566C2 RU 2271566 C2 RU2271566 C2 RU 2271566C2 RU 2002120499/09 A RU2002120499/09 A RU 2002120499/09A RU 2002120499 A RU2002120499 A RU 2002120499A RU 2271566 C2 RU2271566 C2 RU 2271566C2
Authority
RU
Russia
Prior art keywords
address
bus
data
agent
signal
Prior art date
Application number
RU2002120499/09A
Other languages
English (en)
Other versions
RU2002120499A (ru
Inventor
Гурбир СИНГХ (US)
Гурбир СИНГХ
Роберт Дж. ГРИНЬЕ (US)
Роберт Дж. ГРИНЬЕ
Стефен С. ПАВЛОВСКИ (US)
Стефен С. ПАВЛОВСКИ
Дэвид Л. ХИЛЛ (US)
Дэвид Л. ХИЛЛ
Дональд Д. ПАРКЕР (US)
Дональд Д. ПАРКЕР
Original Assignee
Интел Корпорейшн
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Интел Корпорейшн filed Critical Интел Корпорейшн
Publication of RU2002120499A publication Critical patent/RU2002120499A/ru
Application granted granted Critical
Publication of RU2271566C2 publication Critical patent/RU2271566C2/ru

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4208Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a system bus, e.g. VME bus, Futurebus, Multibus
    • G06F13/4217Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a system bus, e.g. VME bus, Futurebus, Multibus with synchronous protocol

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Systems (AREA)
  • Small-Scale Networks (AREA)
  • Bus Control (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Communication Control (AREA)
  • Telephonic Communication Services (AREA)
  • Debugging And Monitoring (AREA)

Abstract

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

Description

Область изобретения
Изобретение относится к процессорам, а в частности, к архитектуре и протоколу шины с учетверенной подкачкой.
С увеличением сложности современного программного обеспечения и приложений и спроса на них возникает требование к процессорам обеспечить возрастающую производительность и полосу частот. В наличии может быть один или более ресурсов, работа которых может ограничить характеристики компьютера, такие как скорость ввода-вывода (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 шинного тактового сигнала. Принимающий агент предпочтительно включает в себя буфер FIFO (первым вошел - первым вышел), которого достаточно для хранения восьми элементов данных. FIFO для восьми элементов данных достаточен для хранения четырех элементов одной передачи данных и следующих четырех элементов для следующей передачи. Это позволяет принимать и захватывать четыре новых элемента данных в то время, как предыдущие четыре элемента данных выталкиваются или выводятся из FIFO в приемник. Чистый эффект составляет четырехкратную полосу частот в режиме сигнализации с общим тактовым сигналом с добавлением запаздывания для первой группы сигналов, фиксируемой внутри приемника или устройства.
Вдобавок, согласно варианту выполнения, множество линий используется для передачи множества копий каждого из двух стробирующих данные сигналов (DSTBp# и DSTBn#). Согласно варианту выполнения, имеется четыре сигнала DSTBn# и четыре сигнала DSTBp#, как представлено в нижеследующей таблице.
Пример варианта осуществления охвата стробов данных
Сигналы данных Стробы
D[15:0]# DSTBp0#, DSTBn0#
D[31:16]# DSTBp1#, DSTBn1#
D[47:32]# DSTBp2#, DSTBn2#
D[63:48]# DSTBp3#, DSTBn3#
Четыре сигнала DSTBp# логически идентичны, как и четыре сигнала DSTBn#, но каждый из стробирующих данные сигналов физически маршрутизируется с поднабором запрошенных сигналов (т.е. поднабор линий данных), чтобы уменьшить искажение или несогласование тактирования между сигналами данных и сигналами стробов данных.
Фиг.8 является блок-схемой устройства для передачи информации между агентами согласно варианту выполнения. Первый шинный агент 802 соединяется со вторым шинным агентом 832. Первый шинный агент 802 включает в себя генератор 1 строба данных / приемник 1 для генерирования и приема первого стробирующего данные сигнала (например, DSTBp#) по первой двунаправленной линии 820 стробирующего данные сигнала, и генератор 2 строба данных / приемник 2 для генерирования и приема второго стробирующего данные сигнала (например, DSTBn#) по второй двунаправленной линии 822 стробирующего данные сигнала. Шинный агент 802 включает в себя также шинный приемопередатчик 806, содержащий передающую цепь для передачи или выдачи сигналов данных на шину данных или линии 826 сигнала данных и приемную цепь для приема сигналов данных по линиям 826 сигнала данных. Второй шинный агент 832 аналогично включает в себя генератор 1 строба данных и генератор 2 строба данных для генерирования двух сигналов строба данных на линии 820 и 822 стробирующего данные сигнала, соответственно. Генератор 810 общего (или системного) шинного тактового сигнала обеспечивает общий или системный тактовый сигнал для шинных агентов 802 и 832.
2. Согласование скорости адресной шины с шиной данных
Согласно варианту выполнения, размер строки кэша увеличен до 64 байтов (размер строки кэша в некоторых процессорах Pentium составляет 32 байта). Тем самым, используя протокол сигнализации с учетверенной подкачкой и разрядности шины данных с 64 линиями данных, строка кэша (или 64 байта) могут передаваться в двух периодах шинного тактового сигнала:
64 байта=(2 периода)×(4 подкачки/период)(8 байтов за подкачку).
Однако в некоторых процессорах Pentium запрос (включая адрес) передается в трех периодах шинного тактового сигнала. Эти три периода шинного тактового сигнала для фазы запроса для некоторых процессоров Pentium включали в себя следующее:
Период 1 - подфаза а - адрес (подаваемый по адресной шине) и тип запроса (например, чтение, запись).
Период 2 - подфаза b - вспомогательные данные для запроса, в том числе разрешения байтов, длина и т.п. (подаваемые по адресным линиям или адресной шине).
Период 3 - пассивный период или период обработки, который позволяет сигналам на шине проходить, чтобы дать возможность другому агенту управлять шиной.
Таким образом, согласно варианту осуществления, строка кэша может передаваться по шине данных в двух периодах шинного тактового сигнала. Однако в некоторых процессорах Pentium тактирование адреса и запроса требует три периода шинного тактового сигнала для передачи запроса. Тем самым, в некоторых процессорах Pentium тактирование адресной шины или полоса частот не согласуются со скоростью усовершенствованной шины данных с учетверенной подкачкой, как она описана в вышеприведенном варианте выполнения (см. фиг.5). Одним из более дефицитных и ценных ресурсов является разрядность шины данных и полоса частот шины данных. Таким образом, согласно варианту выполнения, может быть предпочтительно для полосы частот шины данных сузить или ограничить процессорную шину, но не полосу частот адресной шины. Поэтому, чтобы предохранить адресную шину от замедления или сужения процессорной шины, желательно подстраивать тактирование адреса и запроса на адресной шине, чтобы оно по меньшей мере соответствовало полосе частот или скорости шины данных (в этом примере для передачи одной строки кэша на шине данных).
Поэтому, согласно варианту выполнения, тактирование и скорость фазы запроса, подаваемой по адресной шине, подстраивалась для согласования с полной скоростью шины данных. Желательно сохранять пассивный период или период обработки. Тем самым, согласно варианту выполнения, адресная шина подкачивалась дважды, чтобы обеспечить два информационных элемента (подфаза а и подфаза b запроса) в одном периоде шинного тактового сигнала.
3. Пример режима сигнализации с двойной подкачкой
В целом, согласно варианту выполнения, режим сигнализации с двойной подкачкой оперирует с соответствующей группой шинной сигнализации на удвоенной (2Х) частоте шинного тактового сигнала (BCLK). Фиг.6 представляет собой временную диаграмму, иллюстрирующую работу в примере режима сигнализации с двойной подкачкой согласно варианту выполнения. Хотя двойная подкачка может применяться к любым сигналам, в этом варианте выполнения двойная подкачка применяется к адресной шине.
На фиг.6 снижается уровень сигнала ADS# в начале фазы запроса. В режиме сигнализации с двойной подкачкой два элемента информации выдаются на шину за то время, которое занимает выдача одного элемента с помощью режима сигнализации с общим тактовым сигналом (т.е. в течение одного периода шинного тактового сигнала). Вследствие времени "пролета" (или времени распространения сигнала на процессорной шине 117) вторая группа сигналов или информационный элемент могут задаваться в задатчике перед тем, как первый элемент фиксируется в приемнике(-ax). Согласно варианту осуществления, задатчик посылает новый информационный элемент по нарастающему фронту и в точке 50% периода шинного тактового сигнала.
Как показано на фиг.6, подфаза а запроса (Аа), обеспечивающая адрес транзакции, посылается в первой половине периода 1 шинного тактового сигнала, начинаясь на спадающем фронте в начале периода 1 шинного тактового сигнала. Подфаза b запроса (Ab), обеспечивающая некоторые вспомогательные данные для транзакции, посылается во второй половине периода 1 шинного тактового сигнала, начинаясь в точке 50% периода 1 шинного тактового сигнала. Эти два информационных элемента показаны на фиг.6 как два прямоугольника для Аа и АВ для линий А# (@задатчик). (Аа указывает на подфазу а запроса, поданную по линиям Адрес, тогда как Ab указывает на подфазу b запроса, поданную по линиям Адрес). Таким образом, адресная шина имеет двойную подкачку, потому что два информационных элемента (Аа и Ab) передаются или посылаются в течение одного периода шинного тактового сигнала.
Кроме того, поскольку информация для запроса будет посылаться с помощью режима сигнализации с двойной подкачкой (два информационных элемента за период шинного тактового сигнала), информация предпочтительно посылается в виде синхронной передачи с источником. Тем самым, в дополнение к двум информационным элементам, задатчик также задает или активирует стробирующий адрес сигнал, чтобы обеспечить два адресных строба за период шинного тактового сигнала (когда он активирован). Эти адресные стробы обеспечивают или идентифицируют моменты выборки двух информационных элементов (Аа и Ab), посылаемых по адресной шине.
Согласно варианту выполнения, стробирующий адрес сигнал (ADSTB#) используется с той же частотой, что и шинный тактовый сигнал (BCLK). Однако, чтобы обеспечить два строба в течение одного периода шинного тактового сигнала, и спадающие фронты, и нарастающие фронты стробирующего адрес сигнала будут использоваться в качестве стробов или чтобы идентифицировать моменты выборки для двух информационных элементов, поданных по адресной шине. Как показано на фиг.6, задатчик активирует стробирующий адрес сигнал (ADSTB#) в точке 25% периода 1 шинного тактового сигнала, которая соответствует середине информационного элемента 1 (Аа). Согласно варианту выполнения, адресный строб для первого информационного элемента (Аа или подфаза а запроса) обеспечивается по спадающему фронту сигнала ADSTB# (задается в точке 25% периода 1 шинного тактового сигнала), тогда как адресный строб для второго информационного элемента (Ab или подфаза b запроса) обеспечивается по нарастающему фронту сигнала ADSTB# (задается в точке 75% периода 1 шинного тактового сигнала).
Даже хотя адресный строб имеет такую же частоту, что и шинный тактовый сигнал, этот шинный тактовый сигнал не должен использоваться в качестве стробирующего сигнала для информационных элементов, потому что шинный тактовый сигнал не обеспечивает нарастающего и спадающего фронтов в подходящие моменты времени. Кроме того, шинный тактовый сигнал активируется всегда (в противоположность стробирующему сигналу, который активируется только во время синхронной с источником передачи). Стробирующий адрес сигнал используется, чтобы обеспечить стробы или моменты выборки для двух информационных элементов, потому что стробирующий адрес сигнал можно активировать (включать) и деактивировать (выключать) независимо от состояния или фазы шинного тактового сигнала. Если строб задается от того же самого источника, что и информация, задержка в стробе совпадает с задержкой в информации, а следовательно больше, чем одному байту разрешается находиться на линии в одно и то же время.
Информационные элементы (Аа и Ab) и стробирующий адрес сигнал распространяются вдоль процессорной шины 117 и достигают приемника в начале периода 2 шинного тактового сигнала. Как показано на фиг.6, первый информационный элемент (Аа) захватывается или выбирается по спадающему фронту сигнала (ADSTB#(@приемник), а второй информационный элемент захватывается или выбирается по нарастающему фронту сигнала (ADSTB#(@приемник), как показано двумя треугольниками на сигнале (ADSTB#(@приемник). Таким образом, можно видеть, что приемник захватывает данные или информацию детерминистически на основании указания от задатчика, когда данные доступны (и должны быть захвачены).
Согласно варианту осуществления, запаздывание передачи данных от задающего агента к любому приемнику должно быть меньше и равно одному периоду шинного тактового сигнала минус время установки фиксации входного сигнала. Это позволит избежать состязания на адресных линиях (или адресной шине) и других линиях для второй или последующей фазы, если приемник становится владельцем следующей фазы. Чистый эффект заключается в двойной полосе частот по сравнению с режимом сигнализации с общим тактовым сигналом с добавлением запаздывания для первой группы сигналов, фиксируемой внутри приемника или устройства.
Согласно варианту выполнения, приемник включает в себя четырехэлементный буфер FIFO для хранения четырех информационных элементов, переданных по адресной шине во время фазы запроса. Это позволяет принимать и захватывать в FIFO элементы из подфазы а и подфазы b одного запроса, и в то же самое время позволяет считывать из FIFO и фиксировать в приемнике элементы из подфазы а и подфазы b предыдущего запроса.
Поэтому, согласно варианту выполнения, единственный стробирующий адрес сигнал используется на той же самой частоте, что и у шинного тактового сигнала, чтобы обеспечить стробы для двух информационных элементов, передаваемых по адресной шине. На этих частотах для адресного строба (та же самая частота, что и для шинного тактового сигнала) ослабление сигналов не представляет собой проблемы. Кроме того, любая асимметрия в скважности стробов не создает проблем, потому что только два информационных элемента передаются за период шинного тактового сигнала. Следовательно, для стробирующего адрес сигнала можно использовать единственный адресный строб на той же частоте, что и для шинного тактового сигнала, в котором в качестве стробов используются как спадающие, так и нарастающие фронты.
Альтернативно, можно использовать множество (или два) стробирующих адрес сигналов с использованием только одного из фронтов каждого стробирующего адрес сигнала в качестве строба. К примеру, можно было бы использовать первый стробирующий адрес сигнал, активированный (имеющий спадающий фронт) в точке 25% периода 1, и второй стробирующий адрес сигнал, активированный (имеющий спадающий фронт) в точке 75% периода 1. Тем самым моменты активации двух стробирующих адрес сигналов имели бы сдвиг или шахматный порядок. Поскольку в течение одного периода шинного тактового сигнала выдаются только два элемента, частота стробирующих адрес сигналов могла бы быть выбрана такой же, что и выбранная частота шинного тактового сигнала, или другая частота.
Фиг.9 является блок-схемой устройства передачи информации между агентами согласно другому варианту выполнения. Первый шинный агент 802 соединяется со вторым шинным агентом 832. Первый шинный агент 802 включает в себя генератор 940 адресного строба для генерирования стробирующего адрес сигнала (например, ADSTB#) на двунаправленную линию 920 стробирующего адрес сигнала. Шинный агент 802 включает в себя также шинный приемопередатчик 906, содержащий передающую схему для передачи или выдачи адреса и других сигналов на адресную шину или линии 926 адресных сигналов и приемную схему для приема сигналов, принятых по линиям 926 адресных сигналов. Второй шинный агент 832 подобным же образом включает в себя генератор 942 адресного строба для генерирования стробирующего адрес сигнала на двунаправленную линию 920 стробирующего адрес сигнала. Второй шинный агент 832 включает в себя также шинный приемопередатчик 936, содержащий приемную схему и передающую схему для передачи сигналов и приема сигналов, соответственно, по линиям 926 адресных сигналов.
Как описано выше, передача данных одной строки кэша может осуществляться в двух периодах шинного тактового сигнала с помощью режима сигнализации с учетверенной подкачкой, а запрос адреса может передаваться в двух периодах шинного тактового сигнала с помощью режима с двойной подкачкой. Тем самым как адресная шина, так и шина данных имеют одинаковую пиковую пропускную способность, что обеспечивает сбалансированную процессорную шину. Если не указано обратное, большинство, если не все из оставшихся сигналов передаются с помощью режима сигнализации с общим тактовым сигналом.
VII. Перенастройка шинного протокола на новую частоту в тракте из двух периодов
Как описано выше, процессорная шина обеспечивает увеличенную полосу частот запроса и данных путем использования протоколов сигнализации с множественной подкачкой. Это увеличение полосы частот запроса (на адресной шине) и полосы частот данных (на шине данных) осуществляется без увеличения разрядности шины данных (64 линии), без использования дорогостоящей топологии тактирования или маршрутизации и с сохранением того же самого вида шинного протокола, что и используемый в некоторых из процессоров Pentium.
В некоторых процессорах Pentium режим сигнализации с общим тактовым сигналом использовался для передачи восьми байтов данных за период шинного тактового сигнала с помощью 64 линий данных, что позволяло передавать строку кэша из 32 байтов за четыре периода шинного тактового сигнала. Согласно варианту выполнения изобретения, эта строка кэша была увеличена до 64 линий, и режим сигнализации с учетверенной подкачкой (передающий 32 байта на период шинного тактового сигнала) может использоваться для посылки строки кэша из 64 байтов в двух периодах шинного тактового сигнала. Кроме того, в некоторых процессорах Pentium запрос передается в трех периодах шинного тактового сигнала, включая подфазу а в периоде 1 шинного тактового сигнала, подфазу b в периоде 2 и период обработки (или пассивный период) для периода 3. Согласно варианту выполнения изобретения, режим сигнализации с двойной подкачкой используется на адресной шине для передачи обеих подфаз а и b запроса в единственном периоде шинного тактового сигнала. Это снижает длительность фазы запроса до двух периодов шинного тактового сигнала, что согласуется с длительностью передачи строки кэша (также два периода шинного тактового сигнала). Таким образом, вследствие того, что фаза запроса имеет длительность в два периода шинного тактового сигнала и передача строки кэша требует двух периодов шинного тактового сигнала, скорость в тракте или частота в тракте процессорной шины может в целом считаться равной двум периодам шинного тактового сигнала.
Согласно варианту выполнения изобретения, шинный протокол перенастраивался или модифицировался для подстройки запаздывания или задержки между началом следующих друг за другом фаз для более полного согласования новой частоты в тракте из двух периодов шинного тактового сигнала для процессорной шины. Фиг.7 представляет собой диаграмму, иллюстрирующую минимальное запаздывание или задержку между фазами транзакции (в том числе, фазами арбитража, запроса, слежения и отклика). Фазы арбитража (Arb), запроса (Req), слежения и отклика (Resp) показаны для двух транзакций (транзакция 1 и транзакция 2). Цифры проставлены для указания запаздывания или задержки между фазами. Первая цифра указывает минимальное число периодов шинного тактового сигнала между началом фаз, как это воплощено в некоторых процессорах Pentium, тогда как вторая цифра (взятая в скобки) указывает новое минимальное запаздывание между фазами после того, как шинный протокол был подстроен или перенастроен для более полного согласования с новой частотой в тракте из двух периодов шинного тактового сигнала. Если показана только одна цифра, это указывает на то, что между некоторыми процессорами Pentium и вариантом осуществления изобретения нет никакого изменения в задержке или запаздывании между фазами.
Как отмечено выше, минимальное запаздывание между фазами, показанное на фиг.7, как правило, составляет два периода шинного тактового сигнала. На фиг.7 минимальное запаздывание между началом фазы арбитража и началом фазы запроса для транзакции (например, транзакции 1) остается неизменным и равным двум периодам шинного тактового сигнала. Минимальное запаздывание от начала фазы запроса до начала фазы слежения транзакции уменьшено с четырех периодов шинного тактового сигнала до трех периодов. Минимальное запаздывание между началом фазы слежения до начала фазы запроса остается неизменным и равным двум периодам шинного тактового сигнала. Минимальное запаздывание между началом фазы запроса и моментом, когда целевой агент может установить сигнал TRDY#, уменьшено с трех до двух периодов шинного тактового сигнала. Минимальное запаздывание от установки сигнала TRDY# до начала фазы отклика остается неизменным и равным двум периодам шинного тактового сигнала.
Помимо этого, минимальное запаздывание между одинаковыми или соответствующими фазами следующих друг за другом транзакций модифицировано для более полного согласования с частотой в тракте из двух периодов шинного тактового сигнала. На фиг.7 минимальное запаздывание между следующими друг за другом произвольными фазами (например, минимальное запаздывание между началом фазы арбитража транзакции 1 и началом фазы арбитража транзакции 2) уменьшено с трех периодов шинного тактового сигнала до двух периодов. Минимальное запаздывание между следующими друг за другом фазами запроса уменьшено с трех периодов шинного тактового сигнала до двух. Минимальное запаздывание между следующими друг за другом фазами слежения уменьшено с трех периодов шинного тактового сигнала до двух. И, наконец, минимальное запаздывание между следующими друг за другом фазами отклика уменьшено с трех периодов шинного тактового сигнала до двух.
Каждая из этих фаз будет описана вместе с кратким пояснением некоторых изменений или модификаций в шинном протоколе для этой фазы, которые вносят вклад в уменьшение запаздывания между фазами (если уменьшение запаздывания имеет место).
Когда запрашивающий агент не является владельцем шины, транзакции начинаются с фазы арбитража, в которой запрашивающий агент становится владельцем шины. После того, как запрашивающий агент становится владельцем шины, транзакция входит в фазу запроса. В первой подфазе (подфаза а) фазы запроса сигнал ADS# (указывающий достоверный адрес) задается вместе с адресом транзакции и достаточной информацией, чтобы начать слежение и обращение к памяти. Во второй подфазе (подфаза b) фазы запроса различная вспомогательная для запроса информация выдается на шину 117, в том числе разрешения байтов (указывающие, какие байты данных будут подаваться на линии данных), идентификатор отсрочки, длина транзакции и иная информация транзакции. Первая и вторая фазы инициируются в течение одного периода шинного тактового сигнала. В результате, согласно варианту выполнения, об информации запроса (большая часть из которой подается, например, по адресной шине) говорится, что она имеет удвоенную скорость передачи данных.
Согласно варианту выполнения, каждая транзакция имеет фазу слежения. Результаты слежения из фазы слежения указывают, ссылается ли адрес, заданный для транзакции, на достоверную или модифицированную (необновленную) строку кэша в кэше любого шинного агента. Результаты слежения указывают также, будет ли транзакция завершаться в порядке очередности или может быть отсрочена для возможного завершения с измененной очередностью. Агент может задержать транзакцию, если он не готов к слежению, путем растягивания фазы слежения с помощью задержки слежения.
Каждая из фаз будет описана с выделением отличий, воплощенных для уменьшения запаздывания между фазами (где это приемлемо).
1) Фаза арбитража: никакие транзакции не могут инициироваться до тех пор, пока шинный агент владеет процессорной шиной 117. Транзакции необходимо лишь находиться в этой фазе, если агент, который желает выдать эту транзакцию на процессорную шину 117, не является уже владельцем шины 117. Согласно варианту выполнения, предусматривается протокол арбитража шины, который поддерживает два класса шинных агентов: симметричные агенты и приоритетные агенты. Процессоры на шине 117, как правило, рассматриваются как симметричные агенты. Приоритетным агентом (например, системный интерфейс 116) обычно считается тот, который выступает от имени подсистемы ввода-вывода (мост 124 ввода-вывода или агенты ввода-вывода) и подсистемы памяти (агенты памяти, расположенные в подсистеме 122 основной памяти).
Примерная сигнальная группа, которая может использоваться для владельца шины, показана ниже (как это используется здесь, знак # указывает активные сигналы низкого уровня):
ПРИМЕРНЫЕ СИГНАЛЫ АРБИТРАЖА
Имя контакта/сигнала Обозначение контакта Обозначение сигнала
Шинный запрос симметричного агента BR[3:0]# BREQ[3:0]#
Шинный запрос приоритетного агента BPRI# BPRI#
Запрос очередного блока BNR# BNR#
Фиксация LOCK# LOCK#
Процессорная шина 117 позволяет множеству агентов одновременно осуществлять арбитраж для доступа к шине 117. Симметричные агенты осуществляют арбитраж для доступа к шине 117 на основании схемы приоритета в порядке круговой очереди. Эта схема арбитража гарантирует справедливый доступ к фазе запроса для всех симметричных агентов. Каждый симметричный агент имеет уникальный идентификатор агента, назначенный при сбросе (например, агенты 0, 1, 2, 3), и арбитраж будет осуществляться в порядке круговой очередности. После сброса агент 0 имеет наивысший приоритет, за ним следуют агенты 1, 2 и 3. Каждый симметричный агент сохраняет общий идентификатор ротации, который отражает идентификатор симметричного агента самого недавнего владельца шины. При каждом событии арбитража симметричный агент с наивысшим приоритетом становится владельцем шины и может входить в фазу запроса, если нет других действий с более высоким приоритетом, предотвращающих использование шины. Приоритетный агент(ы) имеет более высокий приоритет, нежели симметричный владелец.
Симметричный агент запрашивает шину путем утверждения своего сигнала BREQ#. На основании значения, выбранного на BREQ#, и последнего симметричного владельца шины все агенты могут одновременно определить следующего симметричного владельца шины. Приоритетный агент запрашивает шину путем установки сигнала BPRI#, который временно отменяет схему арбитража, потому что никакой симметричный агент не будет инициировать другую транзакцию не захваченной шины до тех пор, пока сигнал BPRI# не будет выбран неактивным. Приоритетный агент всегда является очередным владельцем шины. Сигнал BNR# может устанавливаться любым шинным агентом, чтобы заблокировать дальнейшие транзакции от поступления на шину (обычно используется, когда системные ресурсы, такие как буферы, заполнены и не могут принять другую транзакцию). Установка сигнала LOCK# указывает, что шинный агент выполняет неделимую последовательность шинных транзакций, которую нельзя прерывать.
Приоритетный агент может отменить установление BPRI# и оставить владельца шины в том же самом периоде, который он генерировал в своем последнем запросе. В некоторых процессорах Pentium после того, как отменена установка сигнала BPRI#, установка этого сигнала BPRI# должна быть отменена минимально на два периода шинного тактового сигнала. Это согласуется с прежней частотой в три периода шинного тактового сигнала (в некоторых процессорах Pentium) и, таким образом, обеспечивает сбалансированный доступ к шине между симметричными агентами и приоритетными агентами. Согласно варианту выполнения, протокол изменялся, чтобы потребовать отмены установки сигнала BPRI# минимум только на один период шинного тактового сигнала после его установки. Это изменение в текущем варианте выполнения поддерживает скорость в тракте в два периода шинного тактового сигнала с одним периодом шинного тактового сигнала для установки и одним периодом для отмены установки.
Как отмечалось, сигнал BNR# может использоваться для задержки дальнейших запросов, например, когда агент не имеет достаточно ресурсов для поддержания другой транзакции. Согласно варианту выполнения, протокол остановки запроса воплощается и определяется на основании трех состояний:
1) Свободное: в этом состоянии способность агента выдавать запросы не ограничена протоколом задержки запроса BNR#, а ограничена только тем, что он является владельцем шины, и частотой следования запроса. В некоторых процессорах Pentium момент выборки BNR# в свободном состоянии имеет место через три периода тактового сигнала после того, как сигнал ADS# выбран установленным. Согласно варианту выполнения, момент выборки BNR# подстраивался, чтобы иметь место через два периода тактового сигнал (а не три) после того, как сигнал ADS# выбран установленным. Когда агент намерен остановить генерирование нового запроса в свободном состоянии, этот агент задает BNR# активным в периоде тактового сигнала перед моментом выборки достоверного BNR# из ADS#. В следующем периоде тактового сигнала все агенты наблюдают активный BNR# в момент выборки BNR#, и переходят в остановленное состояние.
2) Приостановленное: в этом состоянии агент может инициировать один запрос, когда он является владельцем шины и поддерживается максимальная частота запроса ADS#. Момент выборки BNR# находится в первом периоде тактового сигнала приостановленного состояния. В прерванном состоянии, если BNR# выбирается активным в момент выборки BNR#, состояние переходит в остановленное состояние. Если BNR# выбирается неактивным в момент выборки BNR#, осуществляется переход в свободное состояние.
3) Остановленное: в этом состоянии агент не может инициировать запроса до тех пор, пока BNR#, выбранный в момент выборки BNR#, не станет неактивным. Момент выборки BNR# начинается в периоде шинного тактового сигнала, когда происходит переход в остановленное состояние, и в каждом другом последующем периоде тактового сигнала все время, пока BNR# выбирается активным в свой момент выборки. Состояние остановленного запроса всегда инициализируется в остановленное после события сброса (либо INIT#, либо RESET#). Агент может продлить остановленное состояние путем установки BNR# каждые два периода тактового сигнала (перед допустимыми моментами выборки). Если BNR# не выбирается активным в остановленном состоянии, состояние остановленного запроса перейдет в приостановленное состояние.
Поэтому, требование, чтобы была отменена установка сигнала BNR# только минимально на один период (а не на два) шинного тактового сигнала после его установки, и подстройка момента выборки BNR# в свободном состоянии так, чтобы она происходила через два (а не три) периода тактового сигнала после того, как сигнал ADS# выбирается установленным, уменьшает минимальное запаздывание между началом следующих друг за другом фаз арбитража с трех периодов шинного тактового сигнала до двух периодов шинного тактового сигнала.
2) Фаза запроса: фаза запроса является фазой, в которой транзакция реально инициируется или выдается на шину. Согласно варианту выполнения, фаза запроса составляет по длительности один период общего шинного тактового сигнала. Фаза запроса включает в себя две подфазы, в том числе подфазу а (в течение первой половины фазы запроса) и подфазу b (в течение второй подфазы в фазе запроса). В фазе запроса передается информация запроса, включающая в себя адрес транзакции. Фаза запроса начинается с установки сигнала ADS# - стробирующего адрес сигнала. Ниже дается примерная группа сигналов, которые могут использоваться для передачи запроса.
ПРИМЕРНЫЕ СИГНАЛЫ ЗАПРОСА
Название контакта Обозначение контакта Название сигнала Обозначение сигнала Количество
Адресный строб ADS# Адресный строб ADS# 1
Команда REQ[4:0]# Запросa REQa[4:0]# 5
запроса Расширенный запросb REQb[4:0]#
Стробы запроса ADSTB[1:0]# Стробы запроса ADSTB[1:0]# 2
Адреса А[35:3]# Адресаa Aa[35:3]# 33
Резервныйb Ab[35:32]#
Атрибутыb ATTR[7:0]# или Ab[31:24]#
Идентификатор отсрочкиb DID[7:0]# или Ab[23:16]#
Разрешения байтовb BE[7:0]# или Ab[15:8]#
Расширенные функцииb EXF[4:0]# или Ab[1:0]#
Примечания:
а. Эти сигналы выдаются на указанный контакт в течение первой подфазы (подфаза а) в фазе запроса.
b. Эти сигналы выдаются в течение второй подфазы (подфаза Ь) в фазе запроса.
Таким образом, адрес транзакции передается по Аа[35:3] (где "А" указывает адресные линии или адресную шину 204, а "а" указывает сигналы, передаваемые в течение подфазы а), а дополнительная информация (например, разрешения байтов, атрибуты, расширенные функции), описывающие эту транзакцию, передаются по Ab[35:3] ("b" указывает, что эта дополнительная информация передается по адресным линиям в течение подфазы b). Установка ADS# определяет начало фазы запроса. ADSTB[1:0]# следует предпочтительно переключать один раз в каждом периоде шинного тактового сигнала, в котором устанавливается ADS#, и ни в каких иных периодах. REQa[4:0]# и REQb[4:0]# идентифицируют вид транзакции.
Согласно варианту выполнения, запрос может задаваться на процессорную шину:
1) через один период после получения владения шиной, и
2) через два или более периодов после установки ADS# для предыдущей транзакции, и
3) при наблюдении BNR# неактивным, и
4) при наблюдении LOCK# неактивным, если он не активирован данным агентом.
Некоторые процессоры Pentium требуют минимальной задержки в три периода тактового сигнала после установления ADS# предыдущей транзакции перед тем, как запрос может быть выдан на процессорную шину. Чтобы уменьшить минимальное запаздывание между фазами запроса следующих друг за другом транзакций с трех периодов тактового сигнала до двух периодов тактового сигнала, агент может выдавать запрос на шину после только двух периодов шинного тактового сигнала после установления сигнала ADS# предыдущей транзакции, согласно варианту выполнения. Как отмечалось выше, сигнал ADS# идентифицирует начало фазы запроса и указывает, что на процессорную шину выдана подфаза а запроса, включая адрес (поданный по адресной шине) и запрос (поданный по линиям REQ#[4:0]).
3) Фаза слежения: согласно варианту выполнения, процессорная шина поддерживает согласованность кэша для множества использующих кэш агентов. Согласованность (или когерентность данных) гарантирует, что система или компьютер со множеством уровней кэша и памяти и множеством использующих кэш агентов представляет модель совместно используемой памяти, в которой предпочтительно никакой агент никогда не считывает устаревшие (или неправильные) данные и действия по мере надобности могут быть выстроены последовательно. Строка представляет собой блок кэширования в использующих кэш агентах. Согласно варианту выполнения, строка кэша имеет 64 байта, но могут использоваться и строки кэша иных размеров.
Протокол кэша связывает состояния со строками и определяет правила, управляющие переходами состояний. Каждая строка имеет состояние в каждом кэше. Согласно варианту выполнения, имеется четыре состояния строк, в том числе: М (модифицированное), которое указывает, что строка находится в данном кэше и содержит более свежее значение строки, нежели в памяти, и что эта строка неверна во всех других агентах; Э (эксклюзивное), указывающее, что строка находится в этом кэше и имеет то же самое значение, что и в памяти, и неверна во всех иных агентах; С (совместное), указывающее на то, что эта строка находится в данном кэше, содержит то же самое значение, что и в памяти, и может быть в других агентах; и Н (недоступное), указывающее, что строка недоступна в данном кэше и должна быть выбрана из другого кэша или агента.
Фаза слежения представляет собой фазу, в которой согласованность кэша навязывается. Ниже приведен примерный перечень сигналов слежения, которые могут использоваться в фазе слежения:
ПРИМЕРНЫЕ СИГНАЛЫ СЛЕЖЕНИЯ
Функции сигналов Имя контакта Задатчик
Удержание немодифицированной строки кэша HIT# Агент с совместно используемой строкой
Попадание на модифицированную строку кэша HITM# Агент с необновленной строкой
Завершение отсроченной транзакции DEFER# Отвечающий агент
В фазе слежения все осуществляющие кэширование агенты выдают результаты своего слежения и участвуют в разрешении согласованности кэша. Агенты генерируют результаты внутреннего слежения почти для всех транзакций памяти, которые не являются их собственными. Все осуществляющие кэширование агенты (следящие агенты) выдают результаты своего слежения на шину в этой фазе с помощью сигналов HIT# и HITM#. HIT# устанавливается в течение фазы слежения, чтобы указывать ту копию строки кэша, которая содержит запрошенные данные, хранящиеся в кэше другого агента на данном интерфейсе. HITM# устанавливается в течение фазы слежения, чтобы указывать, что модифицированная копия строки кэша, которая содержит запрошенные данные, находится в кэше другого агента на данном интерфейсе. Если HIT# и HITM# установлены агентом одновременно в течение фазы слежения, то происходит остановка слежения и текущая фаза слежения должна быть продлена. DEFER# устанавливается в течение фазы слежения, чтобы указать, что завершение текущей транзакции не гарантируется.
В некоторых процессорах Pentium результаты слежения выдавались через четыре периода тактового сигнала после того, как сигнал ADS# был установлен, и по меньшей мере, через три периода тактового сигнала после фазы слежения предыдущей транзакции. Однако, согласно варианту выполнения, эти минимальные запаздывания модифицировались для более полного согласования с новой частотой в тракте процессорной шины. Согласно варианту выполнения, результаты слежения могут теперь выдаваться через три периода тактового сигнала после того, как устанавливается сигнал ADS# (т.е. через три периода шинного тактового сигнала после начала фазы запроса) и по меньшей мере через два периода тактового сигнала после фазы слежения (т.е. по меньшей мере через два периода тактового сигнала после того, как результаты слежения выдавались на шину для предыдущей транзакции). Тем самым максимальная частота активации для сигналов HIT#/HITM#/DEFER# (результаты слежения) изменились с одного раза на каждые три периода шинного тактового сигнала до одного раза на каждые два периода шинного тактового сигнала. Отметим, что запаздывание от окончания фазы запросы (подфазы b) до фазы слежения остается одним и тем же, поскольку фаза запроса укоротилась на один период.
4) Фаза отклика: в этой фазе запрашивающий агент выдает отклик транзакции на процессорную шину. Запросы, инициированные в фазе запроса, поступают в порядке очередности, сохраняемой каждым шинным агентом. Отвечающим агентом является агент, ответственный за завершение транзакции на вершине очереди. Отвечающий агент представляет собой устройство или агента, адресованного транзакцией в течение фазы запроса. Ниже дается примерная группа сигналов, которые могут использоваться в фазе отклика:
ПРИМЕРНЫЕ СИГНАЛЫ ОТКЛИКА
Вид Названия сигналов Количество
Состояние отклика RS[2:0]# 3
Четность отклика RSP# 1
Цель готова TRDY# 1
Отклик на транзакцию кодируется на линиях RS[2:0]# сигналов. Примеры возможных откликов включают в себя: нормальный отклик данных (когда отвечающему агенту требуется передать данные считывания вместе с откликом), повторный отклик (когда DEFER# устанавливается в течение фазы слежения, указывая, что транзакцию нужно повторить), отсроченный отклик (когда откликающийся агент или отвечающий агент обещает завершить транзакцию в будущем с помощью отсроченной повторной транзакции), отклик без данных (когда никакие данные не возвращаются адресованным агентом) и т.д. TRDY# устанавливается откликающимся агентом для указания того, что он готов принять данные записи или обратной записи, и т.п. Сигналы RSP# обеспечивают четность для сигналов RS.
В некоторых процессорах Pentium отклик можно задавать после минимум трех периодов шинного тактового сигнала после фазы отклика предыдущей транзакции. Согласно варианту выполнения, это минимальное запаздывание между фазами отклика следующих друг за другом транзакций подстраивалось для более полного согласования с новой частотой в тракте процессорной шины. Согласно варианту выполнения, отклик можно выдавать после минимум двух периодов шинного тактового сигнала после отклика предыдущей транзакции. Это минимальное запаздывание, как правило, подвержено другим ограничениям, которые могут продлить это запаздывание. Вследствие режима сигнализации с двойной подкачкой, используемого для сигналов запроса, отклик можно выдавать один раз на каждые два периода шинного тактового сигнала (по сравнению с одним разом на три периода шинного тактового сигнала для некоторых процессоров Pentium).
Запрос, инициированный транзакцией, представляет собой транзакцию, где запрашивающий агент имеет данные записи для передачи. Адресованный агент устанавливает TRDY#, чтобы показать свою способность принимать данные от запрашивающего агента с намерением выполнить транзакцию записи. В некоторых процессорах Pentium сигнал TRDY# может устанавливаться после минимум трех периодов шинного тактового сигнала после установления сигнала ADS# для той же самой транзакции. Как правило, имеются другие ограничения, которые могут удлинить это запаздывание. Это запаздывание модифицировалось для более полного согласования с новой частотой в тракте процессорной шины. Согласно варианту выполнения, адресованный агент может устанавливать сигнал TRDY# после минимум двух периодов шинного тактового сигнала после установления сигнала ADS# для той же самой транзакции. Отметим, что запаздывание от конца фазы запроса до TRDY# остается неизменной.
5) Фаза данных (передачи): во время этой фазы данные передаются между различными шинными агентами по процессорной шине 117. На основании фазы запроса транзакция содержит либо передачу "инициированных запросом" данных (записи) или передачу "инициированных откликом" данных (чтения), либо отсутствие передачи данных. Фаза данных может перекрываться фазой запроса для транзакции.
Ниже представлен примерный перечень сигналов, которые могут использоваться в фазе данных:
ПРИМЕРНЫЕ СИГНАЛЫ ДАННЫХ
Вид Названия сигналов Количество
Данные готовы DRDY# 1
Шина данных занята DBSY# 1
Стробы данных DSTBp[3:0] # DSTBn[3:0]# 8
Данные D[63:0]# 64
Инверсия данных DINV[3:0]# 4
Четность данных DP[3:0]# 4
DRDY# указывает, что достоверные данные помещены на шину 117 и должны быть зафиксированы. Владелец шины данных устанавливает DRDY# для каждого периода шинного тактового сигнала, в котором достоверные данные подлежат передаче. Установление DRDY# можно отменить, чтобы ввести состояние ожидания в фазу данных. DRDY# можно использовать, чтобы удержать шину данных перед первым установлением DRDY# и между следующими друг за другом установлениями DRDY# для передачи множества данных с шинным тактовым сигналом. DINV[3:0]# используются для указания на то, что биты данных инвертированы источником данных.
Сигналы D[63:0]# данных шины 206 данных (фиг.2) обеспечивают 64-разрядный тракт между шинными агентами. Для частичной передачи, включая транзакции считывания ввода-вывода и записи ввода-вывода, сигналы (BE[7:0]#) разрешения байтов определяют, какие байты шины данных будут содержать достоверные данные. Сигналы DP могут использоваться, чтобы обеспечить четность для сигналов данных.
Согласно варианту выполнения, данные могут передаваться с помощью протокола фиксированной синхронизации с источником с множественной подкачкой (например, 4Х), в котором сигналы D[63:0]# данных используются для передачи четырех 8-байтовых элементов данных в единственном периоде шинного тактового сигнала. Первые 8 байтов (в пакетном порядке) передаются в первой четверти шинного такта, второй 8-байтовый элемент - во второй четверти шинного такта, третий 8-байтовый элемент - в третьей четверти шинного такта, а четвертый 8-байтовый элемент - четвертой четверти шинного такта. Данные могут передаваться в первой четверти шинного такта, если эти данные, подлежащие передаче, имеют длину от 1 до 8 байтов, и данные могут передаваться в первых двух четвертях шинного такта, если эти данные имеют длину 9-16 байтов.
Несколько вариантов выполнения настоящего изобретения конкретно проиллюстрированы и описаны здесь. Однако понятно, что модификации и вариации настоящего изобретения охватываются вышеприведенными разъяснениями и находятся в объеме приложенной формулы изобретения без отрыва от сущности и предполагаемого объема изобретения.
К фиг.1:
100 - компьютер
110 - процессорный агент 0
112 - процессорный агент 1
114 - процессорный агент 2
117 - процессорная шина
116 - системный интерфейс
118 - контроллер памяти
120 - интерфейс ввода-вывода
122 - основная память
124 - мост ввода-вывода
130 - шина ввода-вывода
132 - контроллер ввода-вывода
134 - контроллер ввода-вывода
К фиг.2:
115 - процессорная шина
202 - управляющая шина
204 - адресная шина
206 - шина данных
К фиг.3;
1 - Арбитраж
2 - Запрос
3 - Слежение
4 - Отклик
5 - Передача данных
6 - ЗАМЕЧАНИЕ: Заштрихованная вертикальная полоса указывает, что между различными фазами допускается один или более периодов тактового сигнала
К фиг.4:
7 - Полный такт разрешен для распространения сигнала
8 - Полный такт разрешен для логических задержек
9 - Установление А#
10 - Фиксация А#
11 - Установление В#
12 - Фиксация В#
К фиг.5:
7 - Полный такт разрешен для распространения сигнала
13 - (@задатчик)
14 - (@приемник)
15 - Выдача (D1# или D2#)
16 - Выдача (D1# или D2#)
17 - Фиксация D1, D2, D3, D4 (самого позднего)
К фиг.6:
7 - Полный такт разрешен для распространения сигнала
13 - (@задатчик)
14 - (@приемник)
15 - Выдача (Аа# или Ab#)
16 - Захват (Аа# или Ab#)
18 - Самый поздний
К фиг.7:
19 - Транзакция 1
20 - Транзакция 2
21 - Слежение
22 - Остановка слежения
23 - Приостановка
24 - Остановка
К фиг.8:
25 - Генератор 1 строба данных / приемник 1
26 - Генератор 2 строба данных / приемник 2
27 - Принимающая цепь
28 - Передающая цепь
802 - Первый шинный агент
806 - Шинный приемопередатчик
810 - Генератор общего шинного тактового сигнала
826 - Данные
832 - Второй шинный агент
836 - Шинный приемопередатчик
К фиг.9:
(см. также подписи к фиг.8)
906, 936=806, 836
926 - Адрес
940, 942 - Генератор адресного строба / приемник

Claims (107)

1. Способ передачи информации по многоточечной шине от задающего агента к одному или более принимающих агентов, содержащий следующие этапы:
обеспечение общего шинного тактового сигнала как задающему агенту, так и одному или более принимающим агентам;
инициирование шинной транзакции от задающего агента к одному или более принимающих агентов, включающее в себя этапы:
задающий агент выдает множество информационных элементов для запроса по адресной шине с частотой, которая кратна частоте шинного тактового сигнала;
задающий агент активирует первый стробирующий сигнал, чтобы идентифицировать, когда один или более принимающих агентов должны осуществлять выборку информационных элементов, выданных на адресную шину; и
передачу данных от задающего агента к одному или более принимающим агентам, содержащую этапы:
задающий агент выдает множество информационных элементов на шину данных с частотой, которая является отличным кратным от частоты шинного тактового сигнала; и
задающий агент активирует второй стробирующий сигнал, чтобы идентифицировать, когда один или более принимающих агентов должны осуществлять выборку информационных элементов, выданных на шину данных.
2. Способ по п.1, в котором задающий агент, выдающий множество информационных элементов для запроса по адресной шине, содержит задающий агент, выдающий по меньшей мере два информационных элемента для запроса по адресной шине с частотой, которая по меньшей мере вдвое выше частоты шинного тактового сигнала.
3. Способ по п.2, в котором задающий агент, выдающий множество информационных элементов для запроса по адресной шине, содержит задающий агент, выдающий два информационных элемента для запроса по адресной шине с частотой, которая вдвое выше частоты шинного тактового сигнала.
4. Способ по п.3, в котором задающий агент, выдающий множество информационных элементов на шину данных содержит задающий агент, выдающий по меньшей мере четыре информационных элемента на шину данных с частотой, которая по меньшей мере вчетверо выше частоты шинного тактового сигнала.
5. Способ по п.4, в котором задающий агент, выдающий множество информационных элементов на шину данных, содержит задающий агент, выдающий четыре информационных элемента на шину данных с частотой, которая вчетверо выше частоты шинного тактового сигнала.
6. Способ по п.1, в котором задающий агент, активирующий второй стробирующий сигнал, содержит задающий агент, активирующий по меньшей мере два противофазных строба, чтобы идентифицировать, когда принимающий агент должен осуществлять выборку информационных элементов, выданных на шину данных.
7. Способ по п.6, в котором только один вид фронта стробов используется для того, чтобы идентифицировать, когда принимающий агент должен осуществлять выборку информационных элементов, выданных на шину данных.
8. Шина, включающая в себя линию общего шинного тактового сигнала, предусмотренного для всех шинных агентов, многоточечную двунаправленную адресную шину и многоточечную двунаправленную шину данных, при этом шина выполнена с возможностью работы в двух режимах сигнализации для различных видов сигналов, причем режимами сигнализации являются:
режим сигнализации с общим тактовым сигналом, в котором сигналы выдаются на шину с частотой, которая, по существу, одинакова с частотой шинного тактового сигнала, причем шинный тактовый сигнал идентифицирует моменты времени для выборки информационных элементов, выданных в режиме сигнализации с общим тактовым сигналом; и
режим сигнализации с множественной подкачкой, в котором информационные элементы выдаются задающим агентом по меньшей мере на одну - либо на адресную шину, либо на шину данных - с частотой, которая кратна частоте шинного тактового сигнала, и в котором один или более стробирующих сигналов активируются задающим агентом, чтобы идентифицировать моменты выборки для информационных элементов, выданных в режиме сигнализации с множественной подкачкой.
9. Шина по п.8, в которой только один вид фронтов одного или более стробирующих сигналов используется, чтобы идентифицировать моменты выборки для информационных элементов.
10. Шина по п.8, в которой один или более стробирующих сигналов содержат множество стробирующих сигналов, причем это множество стробирующих сигналов активируется в противофазном или шахматном порядке.
11. Шина по п.8, в которой один или более стробирующих сигналов служат для идентификации момента выборки, которые находятся, по существу, посередине в каждом из информационных элементов.
12. Способ работы шины, включающий в себя следующие шаги:
обеспечение части транзакции по передаче данных по шине, причем упомянутая часть передачи данных выполняется с первым минимальным запаздыванием;
обеспечение части шинной транзакции по выполнению запроса, причем упомянутая часть по выполнению запроса выполняется со вторым запаздыванием;
по существу, согласование минимального запаздывания между началом соответствующих фаз следующих друг за другом шинных транзакций с одним или более из первого и второго минимальных запаздываний.
13. Способ по п.12, в котором первое и второе запаздывания, по существу, равны.
14. Шина, соединенная со множеством шинных агентов, содержащая:
многоточечную двунаправленную управляющую шину, чтобы обеспечить множество управляющих сигналов, в том числе общий шинный тактовый сигнал, стробирующий адрес сигнал и стробирующий данные сигнал;
многоточечную двунаправленную шину данных, чтобы позволить задающему агенту выдавать информационные элементы на эту шину данных с частотой, которая кратна частоте шинного тактового сигнала; и
многоточечную двунаправленную адресную шину, чтобы позволить задающему агенту выдавать информационные элементы на адресную шину с частотой, которая кратна частоте шинного тактового сигнала;
при этом задающий агент активирует стробирующий данные сигнал, чтобы идентифицировать моменты выборки информационных элементов, выданных на шину данных; и
при этом задающий агент активирует стробирующий адрес сигнал, чтобы идентифицировать моменты выборки информационных элементов, выданных на адресную шину.
15. Устройство для передачи информации, содержащее:
множество агентов, причем по меньшей мере один из агентов работает в качестве задающего агента;
многоточечную двунаправленную шину данных, соединенную с этими агентами, причем эта шина включает в себя управляющую шину, адресную шину и шину данных, при этом управляющая шина включает в себя линию общего шинного тактового сигнала для обеспечения общего шинного тактового сигнала для всех агентов, линию стробирующего адрес сигнала и множество линий стробирующего данные сигнала;
при этом задающий агент выполнен с возможностью выдавать запрос на адресную шину в режиме сигнализации с множественной подкачкой, в котором информационные элементы запроса передаются с частотой, которая кратна частоте шинного тактового сигнала, и в котором задающий агент выполнен с возможностью временно активировать стробирующий адрес сигнал на линии стробирующего адрес сигнала, чтобы идентифицировать моменты осуществления выборки для информационных элементов, выданных на адресную шину; и
при этом задающий агент выполнен с возможностью передавать данные в режиме сигнализации с множественной подкачкой, в котором элементы данных выдаются задающим агентом на шину данных с частотой, которая кратна частоте шинного тактового сигнала, и в котором задающий агент также выполнен с возможностью временно активировать множество стробирующих данные сигналов в шахматном или сдвинутом по фазе порядке на множество линий стробирующего данные сигнала, чтобы идентифицировать моменты осуществления выборки для этих элементов данных.
16. Устройство по п.15, в котором только один фронт стробирующих данные сигналов используется, чтобы идентифицировать моменты осуществления выборки для выборки элементов данных.
17. Устройство по п.16, в котором один фронт стробирующих данные сигналов для идентификации момента осуществления выборки для элементов данных содержит только нарастающий фронт стробирующих данные сигналов.
18. Устройство по п.16, в котором один фронт стробирующих данные сигналов для идентификации момента осуществления выборки для элементов данных, содержит только спадающий фронт стробирующих данные сигналов.
19. Устройство для передачи информации, содержащее:
множество агентов, причём по меньшей мере один из этих агентов работает в качестве задающего агента;
двунаправленную многоточечную шину, соединенную с этими агентами, причем эта шина включает в себя управляющую шину, адресную шину и шину данных, при этом управляющая шина включает в себя линию общего шинного тактового сигнала для обеспечения общего шинного тактового сигнала для всех агентов и множество линий стробирующего данные сигнала; причем задающий агент для передачи данных использует режим сигнализации с множественной подкачкой, в котором элементы данных выдаются задающим агентом на шину данных с частотой, которая по меньшей мере в четыре раза выше частоты шинного тактового сигнала, и в котором задающий агент также временно активирует множество стробирующих данные сигналов в шахматном или сдвинутом по фазе порядке на множество линий стробирующего данные сигнала, чтобы идентифицировать моменты осуществления выборки для выборки элементов данных.
20. Шинный агент для подключения к шине, содержащий:
множество контактов данных для подсоединения к линиям данных шины;
множество контактов стробов данных для подсоединения к линиям стробирующего данные сигнала шины;
множество адресных контактов для подсоединения к адресным линиям шины;
контакт строба адреса для подсоединения к линии стробирующего адрес сигнала шины;
контакт общего тактового сигнала для подсоединения к линии общего тактового сигнала шины для шинного тактового сигнала с частотой шинного тактового сигнала;
генератор стробов данных для генерирования первого стробирующего данные сигнала и второго стробирующего данные сигнала на первом контакте строба данных и втором контакте строба данных, причем упомянутые первый стробирующий данные сигнал и второй стробирующий данные сигнал имеют частоту стробов данных вдвое выше упомянутой частоты шинного тактового сигнала;
генератор адресного строба для генерирования первого адресного строба на упомянутом контакте адресного строба с частотой адресного строба, которая одинакова с упомянутой частотой шинного тактового сигнала;
схему передачи данных для передачи элементов данных, синхронизированных с первым фронтом упомянутого первого стробирующего данные сигнала, на упомянутое множество контактов данных и для передачи элементов данных, синхронизированных с первым фронтом упомянутого второго стробирующего данные сигнала, также на упомянутое множество контактов данных;
схему передачи адреса для передачи адресных элементов, синхронизированных с первым фронтом упомянутого первого адресного строба, на упомянутое множество адресных контактов и для передачи адресных элементов, синхронизированных со вторым фронтом упомянутого первого адресного строба, также на упомянутое множество адресных контактов.
21. Шинный агент по п.20, дополнительно содержащий:
множество контактов запроса;
причем упомянутая схема передачи адреса предназначена для передачи элементов запроса, синхронизированных с первым фронтом упомянутого первого адресного строба, на упомянутое множество контактов запроса и для передачи элементов запроса, синхронизированных со вторым фронтом упомянутого первого адресного строба, также на упомянутое множество контактов запроса.
22. Шинный агент по п.21, в котором этот шинный агент предназначен для подачи пары стробов на каждые шестнадцать контактов данных и для подачи двух адресных стробов по одному на каждый из двух поднаборов из упомянутого множества адресных контактов и упомянутого множества контактов запроса.
23. Шинный агент по п.21, в котором первый фронт первого строба данных является спадающим фронтом и при этом первый фронт второго строба данных является спадающим фронтом.
24. Шинный агент по п.20, в котором первый стробирующий данные сигнал и второй стробирующий данные сигнал представляют собой комплементарные стробирующие сигналы.
25. Шинный агент по п.23, дополнительно содержащий множество управляющих контактов для осуществления связи с помощью протокола общего тактового сигнала.
26. Шинный агент по п.21, в котором упомянутый первый адресный строб содержит два, по существу, идентичных адресных строба.
27. Шинный агент по п. 26, в котором первый из двух, по существу, идентичных адресных стробов передается синхронизированным на первый поднабор из множества адресных контактов и множества контактов запроса и при этом второй из двух практически идентичных адресных стробов передается синхронизированным на второй поднабор из множества адресных контактов и множества контактов запроса, причем этот второй поднабор состоит из остальных из множества адресных контактов и множества контактов запроса, которые не входят в первый поднабор.
28. Шинный агент по п.21, дополнительно содержащий:
схему приема стробов данных для приема третьего стробирующего данные сигнала и четвертого стробирующего данные сигнала на упомянутый первый контакт стробов данных и упомянутый второй контакт стробов данных, причем упомянутый третий стробирующий данные сигнал и упомянутый четвертый стробирующий данные сигнал имеют частоту стробов данных вдвое выше упомянутой частоты шинного тактового сигнала;
схему приема адресных стробов для приема второго адресного строба на упомянутый контакт адресного строба с частотой адресного строба, которая одинакова с упомянутой частотой шинного тактового сигнала;
схему приема данных для приема элементов данных, синхронизированных с первым фронтом упомянутого третьего стробирующего данные сигнала, на упомянутое множество контактов данных и для приема элементов данных, синхронизированных с первым фронтом упомянутого четвертого стробирующего данные сигнала, также на упомянутое множество контактов данных;
схему приема адреса для приема адресных элементов, синхронизированных с первым фронтом упомянутого второго адресного строба, на упомянутое множество адресных контактов и для приема адресных элементов, синхронизированных со вторым фронтом упомянутого второго адресного строба, также на упомянутое множество адресных контактов.
29. Шинный агент по п.28, в котором этот шинный агент является любым одним или более из набора шинных агентов, состоящего из:
микропроцессорного набора;
процессора;
контроллера памяти;
агента центрального процессора для управления сбросом, конфигурацией аппаратного обеспечения и инициализацией, транзакциями и централизованным обнаружением и обработкой аппаратных ошибок;
агента ввода-вывода.
30. Шинный агент для подключения к шине, содержащий:
множество контактов данных, содержащее контакты D[63:0] данных для подсоединения к линиям данных шины;
множество адресных контактов для подсоединения к адресным линиям шины;
множество контактов запроса, содержащих контакты REQ[3:0] запроса для подсоединения к линиям запроса;
контакт общего тактового сигнала для подсоединения к линии общего тактового сигнала шины для шинного тактового сигнала, имеющего частоту шинного тактового сигнала;
множество управляющих контактов для подсоединения к линиям управляющих сигналов шины для передачи множества сигналов, которые должны работать синхронно с упомянутым шинным тактовым сигналом;
генератор строба данных для генерирования четырех пар стробирующих данные сигналов, причем каждая из упомянутых четырех пар стробирующих данные сигналов имеет первый стробирующий данные сигнал и второй стробирующий данные сигнал, при этом упомянутый первый стробирующий данные сигнал и упомянутый второй стробирующий данные сигнал каждой из упомянутых четырех пар стробирующих данные сигналов имеют частоту стробов данных вдвое выше упомянутой частоты шинного тактового сигнала;
генератор адресных стробов для генерирования первого адресного строба, имеющего частоту адресного строба, которая одинакова с упомянутой частотой шинного тактового сигнала;
схему передачи данных для передачи для каждой из упомянутых четырех пар стробирующих данные сигналов и на различные поднаборы упомянутого множества контактов данных;
первые элементы данных, синхронизированные со спадающим фронтом упомянутого первого стробирующего данные сигнала, на поднаборе упомянутого множества контактов данных;
вторые элементы данных, синхронизированные со спадающим фронтом упомянутого второго стробирующего данные сигнала, также на поднаборе упомянутого множества контактов данных;
схему передачи адреса для первой передачи адресных элементов, синхронизированных со спадающим фронтом упомянутого первого адресного строба, на упомянутое множество адресных контактов и для второй передачи адресных элементов, синхронизированных с нарастающим фронтом упомянутого первого адресного строба, также на упомянутое множество адресных контактов; при этом упомянутая схема передачи адреса предназначена также для первой передачи элементов запроса, синхронизированных со спадающим фронтом упомянутого первого адресного строба, на упомянутое множество контактов запроса и второй передачи элементов запроса, синхронизированных с упомянутым нарастающим фронтом упомянутого первого адресного строба, также на упомянутое множество контактов запроса.
31. Шинный агент по п.30, в котором упомянутый первый адресный строб содержит два, по существу, идентичных адресных строба.
32. Шинный агент по п.31, в котором первый из двух практически идентичных адресных стробов передается синхронизированным на первый поднабор из множества адресных контактов и множества контактов запроса, при этом второй из двух, по существу, идентичных адресных стробов передается синхронизированным на второй поднабор из множества адресных контактов и множества контактов запроса, причем второй поднабор состоит из остальных из множества адресных контактов и множества контактов запроса, которые не входят в первый поднабор.
33. Шинный агент по п.30, в котором упомянутое множество управляющих контактов содержит контакты, соответствующие группе сигналов, содержащей:
ADS# (адресный строб);
BNR# (запрос очередного блока);
BPRI# (шинный запрос приоритетного агента);
по меньшей мере один контакт шинного запроса для подсоединения к линии запроса;
DBSY# (шина данных занята);
DEFER# (завершение отсроченной транзакции);
DP[3:0]# (чётность данных);
DRDY# (данные готовы);
HIT# (удержание немодифицированной строки кэша);
HITM# (попадание на модифицированную строку кэша);
INIT# (сигнал инициализации;
TRDY# (цель готова).
34. Шинный агент для подсоединения к шине, содержащий:
множество контактов данных для подсоединения к линиям данных шины;
множество адресных контактов для подсоединения к адресным линиям шины;
контакт общего тактового сигнала для подсоединения к линии общего тактового сигнала шины для шинного тактового сигнала с частотой шинного тактового сигнала;
приемник строба данных для приема первого стробирующего данные сигнала и второго стробирующего данные сигнала, причем упомянутый первый стробирующий данные сигнал и упомянутый второй стробирующий данные сигнал имеют частоту стробов данных вдвое выше упомянутой частоты шинного тактового сигнала;
приемник адресного строба для приема первого адресного строба с частотой адресного строба, которая одинакова с упомянутой частотой шинного тактового сигнала;
схему приема данных для приема элементов данных, синхронизированных с первым фронтом упомянутого первого стробирующего данные сигнала, на упомянутое множество контактов данных и для приема элементов данных, синхронизированных с первым фронтом упомянутого второго стробирующего данные сигнала, также на упомянутое множество контактов данных;
схему приема адреса для приема адресных элементов, синхронизированных с первым фронтом упомянутого первого адресного строба, на упомянутое множество адресных контактов и для приема адресных элементов, синхронизированных со вторым фронтом упомянутого первого адресного строба, также на упомянутое множество адресных контактов.
35. Шинный агент по п.34, дополнительно содержащий:
множество контактов запроса;
причем упомянутая схема приема адреса предназначена для приема элементов запроса, синхронизированных с первым фронтом упомянутого первого адресного строба, на упомянутое множество контактов запроса, и элементов запроса, синхронизированных со вторым фронтом упомянутого первого адресного строба, также на упомянутое множество контактов запроса.
36. Шинный агент по п.35, в котором этот шинный агент предназначен для подачи пары стробов для каждых шестнадцати контактов данных и для подачи двух адресных стробов по одному для каждого из двух поднаборов из упомянутого множества адресных контактов и упомянутого множества контактов запроса.
37. Шинный агент по п.34, в котором первый фронт первого строба данных является спадающим фронтом и при этом первый фронт второго строба данных является спадающим фронтом.
38. Шинный агент по п.34, в котором первый стробирующий данные сигнал и второй стробирующий данные сигнал представляют собой комплементарные стробирующие сигналы.
39. Шинный агент по п.35, дополнительно содержащий множество контактов управления для осуществления связи с помощью протокола общего тактового сигнала.
40. Шинный агент по п.39, в котором упомянутое множество контактов управления содержит набор контактов управления для группы сигналов, содержащей:
ADS# (адресный строб);
BNR# (запрос очередного блока);
BPRI# (шинный запрос приоритетного агента);
по меньшей мере один контакт шинного запроса;
DBSY# (шина данных занята);
DEFER# (завершение отсроченной транзакции);
DP[3:0]# (чётность данных);
DRDY# (данные готовы);
HIT# (удержание немодифицированной строки кэша);
HITM# (попадание на модифицированную строку кэша);
INIT# (сигнал инициализации);
TRDY# (цель готова).
41. Шинный агент по п.34, в котором упомянутый первый адресный строб содержит два, по существу, идентичных адресных строба.
42. Шинный агент для подсоединения к шине, содержащий:
интерфейс шинного тактового сигнала для шинного тактового сигнала, который работает на частоте шинного тактового сигнала;
интерфейс адресной шины с двойной подкачкой для передачи информационных элементов адресной шины на удвоенной частоте шинного тактового сигнала в виде синхронной передачи от источника;
интерфейс шины запроса с двойной подкачкой для передачи информационных элементов запроса на удвоенной частоте шинного тактового сигнала в виде синхронной передачи от источника;
шину данных с учетверенной подкачкой для передачи информационных элементов шины данных на учетверенной частоте шинного тактового сигнала в виде синхронной передачи от источника.
43. Шинный агент по п.42, содержащий далее интерфейс для множества управляющих сигналов, которые работают на частоте шинного тактового сигнала.
44. Система шин, предназначенная для облегчения передачи данных из агента и к агенту, содержащая:
адресную шину;
шину запроса;
шину данных;
по меньшей мере одну линию шинного тактового сигнала для передачи одного или более шинных тактовых сигналов, работающих на частоте шинного тактового сигнала;
первый агент, связанный с упомянутой адресной шиной, упомянутой шиной запроса, упомянутой шиной данных, причем упомянутый первый агент имеет схему шинного интерфейса для подачи данных с учетверенной подкачкой на шину данных и информации адресов и запроса с двойной подкачкой соответственно на упомянутую адресную шину и упомянутую шину запроса;
второй агент, связанный с упомянутой адресной шиной, упомянутой шиной запроса, упомянутой шиной данных, причем упомянутый второй агент имеет схему шинного интерфейса для приема данных с учетверенной подкачкой на шину данных, а информации адресов и запроса с двойной подкачкой соответственно по упомянутой адресной шине и упомянутой шине запроса.
45. Система по п.44, в которой упомянутый первый агент является процессором, а упомянутый второй агент является микропроцессорным набором.
46. Система по п.44, содержащая далее управляющую шину, по которой передаются множество управляющих сигналов, синхронизированных с одним или более шинными тактовыми сигналами.
47. Система по п.45, в которой информация передается по упомянутой шине данных, упомянутой адресной шине и упомянутой шине запроса в виде синхронной передачи от источника.
48. Система шин, предназначенная для облегчения передачи данных между агентами, содержащая:
шину, содержащую:
множество линий данных;
множество линий строба данных;
множество адресных линий;
линию адресного строба;
линию шинного тактового сигнала;
первый агент, содержащий:
множество контактов данных первого агента, связанных с упомянутым множеством линий данных;
множество контактов строба данных первого агента, связанных с упомянутым множеством линий строба данных, причем упомянутое множество контактов строба данных первого агента содержит первый контакт строба данных первого агента и второй контакт строба данных первого агента;
множество адресных контактов первого агента, связанных с упомянутым множеством адресных линий;
контакт адресного строба первого агента, связанный с упомянутой линией адресного строба;
контакт общего тактового сигнала первого агента, подсоединенный к упомянутой линии шинного тактового сигнала и предназначенный для приема шинного тактового сигнала с частотой шинного тактового сигнала;
генератор строба данных первого агента для генерирования первого стробирующего данные сигнала первого агента на контакте строба данных первого агента и второго стробирующего данные сигнала первого агента на втором контакте строба данных первого агента, причем упомянутый первый стробирующий данные сигнал первого агента и упомянутый второй стробирующий данные сигнал первого агента имеют частоту строба данных вдвое выше упомянутой частоты шинного тактового сигнала;
генератор адресного строба первого агента для генерирования адресного строба первого агента на упомянутом контакте адресного строба первого агента с частотой адресного строба, которая одинакова с упомянутой частотой шинного тактового сигнала;
схему передачи данных первого агента для передачи первых элементов данных, синхронизированных с первым спадающим фронтом упомянутого первого стробирующего данные сигнала первого агента, на упомянутое множество контактов данных первого агента и для передачи вторых элементов данных, синхронизированных с первым спадающим фронтом упомянутого второго стробирующего данные сигнала первого агента, также на упомянутое множество контактов данных первого агента и для передачи третьих элементов данных, синхронизированных со вторым спадающим фронтом упомянутого первого стробирующего данные сигнала первого агента, на упомянутое множество контактов данных первого агента и для передачи четвертых элементов данных, синхронизированных со вторым спадающим фронтом упомянутого второго стробирующего данные сигнала первого агента, также на упомянутое множество контактов данных первого агента;
схему передачи адреса первого агента для передачи, во-первых, адресных элементов, синхронизированных со спадающим фронтом упомянутого адресного строба первого агента, на упомянутое множество адресных контактов и для передачи, во-вторых, адресных элементов, синхронизированных с нарастающим фронтом упомянутого адресного строба первого агента, также на упомянутое множество адресных контактов;
второй агент, содержащий:
множество контактов данных второго агента, связанных с упомянутым множеством линий данных;
множество контактов строба данных второго агента, связанных с упомянутым множеством линий строба данных, причем упомянутое множество контактов строба данных второго агента содержит первый контакт строба данных второго агента и второй контакт строба данных второго агента;
множество адресных контактов второго агента, связанных с упомянутым множеством адресных линий;
контакт адресного строба второго агента, связанный с упомянутой линией адресного строба;
контакт общего тактового сигнала второго агента, подсоединенный к упомянутой линии шинного тактового сигнала и предназначенный для приема шинного тактового сигнала с частотой шинного тактового сигнала;
приемник строба данных второго агента для приема первого стробирующего данные сигнала упомянутого первого агента и второго стробирующего данные сигнала упомянутого первого агента на упомянутое множество контактов строба данных второго агента;
приемник адресного строба второго агента для приема адресного строба упомянутого первого агента на упомянутом контакте адресного строба второго агента;
приемник данных второго агента для приема упомянутых первых элементов данных, синхронизированных с первым спадающим фронтом упомянутого первого стробирующего данные сигнала первого агента, на упомянутое множество контактов данных второго агента и для приема упомянутых вторых элементов данных, синхронизированных с первым спадающим фронтом упомянутого второго стробирующего данные сигнала первого агента, также на упомянутое множество контактов данных второго агента и для приема упомянутых третьих элементов данных, синхронизированных с упомянутым вторым спадающим фронтом упомянутого первого стробирующего данные сигнала первого агента, на упомянутое множество контактов данных второго агента и для приема упомянутых четвертых элементов данных, синхронизированных с упомянутым вторым спадающим фронтом упомянутого второго стробирующего данные сигнала первого агента, также на упомянутое множество контактов данных второго агента;
схему приема адреса второго агента для приема адресных элементов, синхронизированных с упомянутым первым фронтом упомянутого адресного строба первого агента, на упомянутое множество адресных контактов второго агента и для приема адресных элементов, синхронизированных с упомянутым вторым фронтом упомянутого адресного строба первого агента, также на упомянутое множество адресных контактов.
49. Система по п.48, в которой упомянутый второй агент дополнительно содержит:
генератор строба данных второго агента для генерирования первого стробирующего данные сигнала второго агента на первом контакте строба данных второго агента и второго стробирующего данные сигнала второго агента на втором контакте строба данных второго агента, причем упомянутый первый стробирующий данные сигнал второго агента и упомянутый второй стробирующий данные сигнал второго агента имеют частоту стробов данных вдвое выше упомянутой частоты шинного тактового сигнала;
генератор адресных стробов второго агента для генерирования адресного строба второго агента на упомянутом контакте адресного строба второго агента с частотой адресного строба, которая одинакова с упомянутой частотой шинного тактового сигнала;
схему передачи данных второго агента для передачи элементов данных, синхронизированных с первым фронтом упомянутого первого стробирующего данные сигнала второго агента, на упомянутое множество контактов данных второго агента и для передачи элементов данных, синхронизированных с первым фронтом упомянутого второго стробирующего данные сигнала второго агента, также на упомянутое множество контактов данных второго агента;
схему передачи адреса второго агента для передачи адресных элементов, синхронизированных с первым фронтом упомянутого адресного строба второго агента, на упомянутое множество адресных контактов и для передачи адресных элементов, синхронизированных с вторым фронтом упомянутого адресного строба второго агента, также на упомянутое множество адресных контактов.
50. Система по п.49, в которой упомянутый первый агент дополнительно содержит:
схему приема строба данных первого агента для приема упомянутого первого стробирующего данные сигнала первого агента и упомянутого второго стробирующего данные сигнала первого агента на упомянутое множество контактов строба данных первого агента;
схему приема адресного строба первого агента для приема упомянутого адресного строба первого агента на упомянутый контакт адресного строба первого агента;
схему приема данных первого агента для приема элементов данных, синхронизированных с упомянутым первым фронтом упомянутого первого стробирующего данные сигнала первого агента на упомянутое множество контактов данных первого агента и для приема элементов данных, синхронизированных с упомянутым первым фронтом упомянутого второго стробирующего данные сигнала первого агента, также на упомянутое множество контактов данных первого агента;
схему приема адреса первого агента для приема адресных элементов, синхронизированных с упомянутым первым фронтом упомянутого адресного строба первого агента, на упомянутое множество адресных контактов первого агента и для приема адресных элементов, синхронизированных с упомянутым вторым фронтом упомянутого адресного строба первого агента, также на упомянутое множество адресных контактов.
51. Система по п. 50, дополнительно содержащая управляющую шину, по которой передается множество управляющих сигналов, синхронизированных с шинным тактовым сигналом.
52. Способ работы шины, включающий в себя следующие этапы:
обеспечение множества пар комплементарных стробирующих сигналов в фазе данных;
обеспечение четырех элементов данных на период шинного тактового сигнала, передаваемых в виде синхронной передачи от источника вместе с упомянутым множеством пар комплементарных стробирующих сигналов, обеспечивая множество адресных стробов;
обеспечение двух элементов запроса и двух адресных элементов на период шинного тактового сигнала, передаваемых в виде синхронной передачи от источника вместе с упомянутым множеством адресных стробов.
53. Способ по п.52, в котором упомянутый этап обеспечения четырех элементов данных содержит следующие этапы:
обеспечение первого элемента данных, синхронизированного с первым фронтом первого вида первого из пары стробирующих данные сигналов;
обеспечение второго элемента данных, синхронизированного с первым фронтом первого вида второго из пары стробирующих данные сигналов;
обеспечение третьего элемента данных, синхронизированного со вторым фронтом первого вида первого из пары стробирующих данные сигналов;
обеспечение четвертого элемента данных, синхронизированного со вторым фронтом первого вида второго из пары стробирующих данные сигналов.
54. Способ по п. 53, в котором упомянутый первый вид фронта является спадающим фронтом.
55. Способ по п. 53, в котором упомянутый этап обеспечения двух элементов запроса и двух адресных элементов содержит следующие этапы: обеспечение первого адресного элемента и первого элемента запроса, синхронизированных с первым фронтом по меньшей мере одного из множества адресных стробов;
обеспечение второго адресного элемента и второго элемента запроса, синхронизированных со вторым фронтом первого вида второго из пары стробирующих данные сигналов.
56. Способ по п.55, в котором упомянутый первый фронт является спадающим фронтом адресного строба, а второй фронт является нарастающим фронтом адресного строба.
57. Шинный агент, содержащий:
контакт сигнала запроса следующего блока;
контакт стробирующего адрес сигнала;
схему арбитража, способную инициировать фазу арбитража после истечения двух периодов от предыдущей фазы арбитража и способную принимать сигнал запроса следующего блока на контакт сигнала запроса следующего блока через два периода шинного тактового сигнала после того, как произойдёт установление стробирующего адрес сигнала на контакте стробирующего адрес сигнала, и способную откликаться на упомянутый сигнал запроса следующего блока.
58. Шинный агент по п.57, дополнительно содержащий интерфейс шины данных с учетверенной подкачкой.
59. Шинный агент по п.58, дополнительно содержащий интерфейс адресной шины с двойной подкачкой; интерфейс шины запроса с двойной подкачкой.
60. Шинный агент по п.59, в котором упомянутая схема арбитража предназначена для отклика на упомянутый сигнал запроса следующего блока путем перехода к остановленному состоянию и пребывания после этого в упомянутом остановленном состоянии, если упомянутый сигнал запроса следующего блока остается установленным в момент осуществления выборки запроса следующего блока каждые два периода, причем остановленное состояние препятствует шинному агенту выдавать шинные запросы.
61. Шинный агент по п.57, дополнительно содержащий:
множество контактов данных для подсоединения к линиям данных шины;
множество контактов строба данных для подсоединения к линиям стробирования данных шины;
контакт общего тактового сигнала для подсоединения к линии общего тактового сигнала шины для шинного тактового сигнала с частотой шинного тактового сигнала;
генератор строба данных для генерирования первого стробирующего данные сигнала и второго стробирующего данные сигнала на первом контакте строба данных и втором контакте строба данных, причем упомянутый первый стробирующий данные сигнал и упомянутый второй стробирующий данные сигнал имеют частоту вдвое выше упомянутой частоты шинного тактового сигнала;
схему передачи данных для передачи элементов данных, синхронизированных с первым фронтом упомянутого первого стробирующего данные сигнала, на упомянутое множество контактов данных и для передачи элементов данных, синхронизированных с первым фронтом упомянутого второго стробирующего данные сигнала, также на упомянутое множество контактов данных.
62. Шинный агент по п.61, дополнительно содержащий:
множество адресных контактов;
генератор адресного строба для генерирования первого адресного строба с частотой адресного строба, которая одинакова с упомянутой частотой шинного тактового сигнала;
схему передачи адреса для передачи адресных элементов, синхронизированных с первым фронтом упомянутого первого адресного строба, на упомянутое множество адресных контактов и для передачи адресных элементов, синхронизированных со вторым фронтом упомянутого первого адресного строба, также на упомянутое множество адресных контактов.
63. Шинный агент по п.62, дополнительно содержащий:
множество контактов запроса;
при этом упомянутая схема передачи адреса предназначена для передачи элементов запроса, синхронизированных с первым фронтом упомянутого первого адресного строба, на упомянутое множество контактов запроса и для запроса элементов, синхронизированных со вторым фронтом упомянутого первого адресного строба, также на упомянутое множество контактов запроса.
64. Шинный агент по п.57, дополнительно содержащий:
множество адресных контактов;
множество контактов запроса;
генератор адресного строба для генерирования первого адресного строба, имеющего частоту адресного строба, которая одинакова с частотой шинного тактового сигнала;
схему передачи адреса для передачи адресных элементов, синхронизированных с первым фронтом упомянутого первого адресного строба, на упомянутое множество адресных контактов и для передачи адресных элементов, синхронизированных со вторым фронтом упомянутого первого адресного строба, также на упомянутое множество адресных контактов и для передачи элементов запроса, синхронизированных с первым фронтом упомянутого первого адресного строба, на упомянутое множество контактов запроса и для передачи элементов запроса, синхронизированных со вторым фронтом упомянутого первого адресного строба, также на упомянутое множество контактов запроса.
65. Шинный агент по п.64, в котором упомянутый первый адресный строб содержит два практически идентичных адресных строба.
66. Шинный агент по п.65, в котором первый из двух, по существу, идентичных адресных стробов передается синхронизированным на первый поднабор из множества адресных контактов и множества контактов запроса и при этом второй из двух, по существу, идентичных адресных стробов передается синхронизированным на второй поднабор из множества адресных контактов и множества контактов запроса, причем второй поднабор состоит из остальных из множества адресных контактов и множества контактов запроса, которые не входят в первый поднабор.
67. Шинный агент по п.57, в котором упомянутый шинный агент является приоритетным агентом, причем упомянутый приоритетный агент содержит контакт шинного запроса приоритетного агента, при этом упомянутая схема арбитража способна устанавливать сигнал шинного запроса приоритетного агента на упомянутом контакте шинного запроса приоритетного агента с минимальным временем отмены установки в один период шинного тактового сигнала.
68. Шинный агент по п.59, в котором упомянутая схема арбитража предназначена для отклика на упомянутый сигнал запроса следующего блока путем перехода из свободного состояния в приостановленное состояние, если этот шинный агент был в свободном состоянии, когда принимался сигнал запроса следующего блока, и путем перехода из приостановленного состояния в остановленное состояние, если сигнал запроса следующего блока остается установленным еще два такта, и после этого - оставаться в упомянутом остановленном состоянии, если упомянутый сигнал запроса следующего блока остается установленным в момент осуществления выборки запроса следующего блока каждые два такта, причем остановленное состояние препятствует этому шинному агенту инициировать шинные запросы.
69. Способ работы шины, содержащий следующие этапы:
установление первого сигнала запроса как части первой фазы арбитража в первой транзакции;
установление второго сигнала запроса как части второй фазы запроса во второй транзакции в конвейерном режиме до завершения упомянутой первой транзакции;
установление стробирующего адрес сигнала как части фазы запроса в первой транзакции;
прием сигнала запроса следующего блока через два периода шинного тактового сигнала после установления стробирующего адрес сигнала и
отклик на упомянутый сигнал запроса следующего блока.
70. Способ по п.69, в котором упомянутый первый сигнал запроса устанавливается первым шинным агентом и в котором упомянутый второй сигнал запроса устанавливается вторым шинным агентом.
71. Способ по п.69, в котором упомянутый первый сигнал запроса и упомянутый второй сигнал запроса устанавливаются первым шинным агентом.
72. Способ по п.69, содержащий дополнительно следующие этапы:
обеспечение множества пар комплементарных стробирующих сигналов в фазе данных;
обеспечение четырех элементов данных на период шинного тактового сигнала, передаваемых в виде синхронной передачи от источника вместе с упомянутым множеством пар комплементарных стробирующих сигналов.
73. Способ по п.72, содержащий дополнительно следующие этапы:
обеспечение множества адресных стробов;
обеспечение двух элементов запроса и двух адресных элементов на период шинного тактового сигнала, передаваемых в виде синхронной передачи от источника вместе с упомянутым множеством адресных стробов.
74. Способ по п.73, в котором упомянутый этап обеспечения четырех элементов данных содержит следующие этапы:
обеспечение первого элемента данных, синхронизированного с первым фронтом первого вида первого из пары стробирующих данные сигналов;
обеспечение второго элемента данных, синхронизированного с первым фронтом первого вида второго из пары стробирующих данные сигналов;
обеспечение третьего элемента данных, синхронизированного со вторым фронтом первого вида первого из пары стробирующих данные сигналов;
обеспечение четвертого элемента данных, синхронизированного со вторым фронтом первого вида второго из пары стробирующих данные сигналов.
75. Способ по п.74, в котором упомянутый первый вид фронта является спадающим фронтом.
76. Способ по п.74, в котором упомянутый этап обеспечения двух элементов запроса и двух адресных элементов содержит следующие этапы:
обеспечение первого адресного элемента и первого элемента запроса, синхронизированных с первым фронтом по меньшей мере одного из множества стробирующих адрес сигналов;
обеспечение второго адресного элемента и второго элемента запроса, синхронизированных со вторым фронтом по меньшей мере одного из множества стробирующих адрес сигналов.
77. Способ по п.76, в котором упомянутый первый фронт является спадающим фронтом адресного строба и второй фронт является нарастающим фронтом адресного строба.
78. Способ по п.69, в котором этап отклика содержит следующие этапы:
переход в остановленное состояние и пребывание в упомянутом остановленном состоянии, если упомянутый сигнал запроса следующего блока остается установленным в момент осуществления выборки запроса следующего блока каждые два такта, причем остановленное состояние препятствует этому шинному агенту выдавать шинные запросы.
79. Способ по п.69, в котором этап отклика содержит следующие этапы:
переход из свободного состояния в приостановленное состояние, если шинный агент находился в свободном состоянии, когда принимался сигнал запроса следующего блока;
переход из приостановленного состояния в остановленное состояние, если сигнал запроса следующего блока остается установленным еще два такта;
пребывание в приостановленном состоянии, если упомянутый сигнал запроса следующего блока остается установленным в момент осуществления выборки запроса следующего блока каждые два такта, причем остановленное состояние препятствует этому шинному агенту выдавать шинные запросы.
80. Система для осуществления арбитража доступа к шине, содержащая:
шинный агент;
контакт сигнала запроса следующего блока;
входной контакт шинного запроса приоритетного агента;
контакт стробирующего адрес сигнала;
схему арбитража шинного агента, способную инициировать фазу арбитража после двух тактов от предыдущей фазы арбитража и способную принимать сигнал запроса следующего блока на контакт сигнала запроса следующего блока через два периода шинного тактового сигнала после того, как происходит установление стробирующего адрес сигнала на контакте стробирующего адрес сигнала, и откликаться на упомянутый сигнал запроса следующего блока;
приоритетный агент, содержащий:
контакт шинного запроса приоритетного агента;
схему арбитража приоритетного шинного агента, способную устанавливать сигнал шинного запроса приоритетного агента на упомянутом контакте шинного запроса приоритетного агента с минимальным временем отмены установления в один период шинного тактового сигнала.
81. Система по п.80, в которой упомянутый шинный агент и упомянутый приоритетный шинный агент оба дополнительно содержат интерфейс шины данных с учетверенной подкачкой с синхронной передачей от источника.
82. Система по п.81, в которой упомянутый шинный агент и упомянутый приоритетный шинный агент оба дополнительно содержат интерфейс адресной шины синхронной передачи от источника с двойной подкачкой.
83. Система по п.82, в которой упомянутый шинный агент и упомянутый приоритетный шинный агент оба дополнительно содержат интерфейс шины запроса синхронной передачи от источника с двойной подкачкой.
84. Система по п.83, в которой упомянутая система дополнительно содержит множество управляющих сигналов, которые работают согласно протоколу общего тактового сигнала.
85. Шинный агент, содержащий:
множество контактов сигнала запроса;
контакт стробирующего адрес сигнала;
схему запроса, способную инициировать вторую фазу запроса для второй транзакции через два такта после первой фазы запроса для первой транзакции путем установления множества сигналов запроса на упомянутом множестве контактов сигнала запроса и стробирующего адрес сигнала второй транзакции на контакте стробирующего адрес сигнала для второй транзакции через два периода шинного тактового сигнала после того, как происходит установление стробирующего адрес сигнала первой транзакции для первой транзакции на упомянутом контакте стробирующего адрес сигнала;
схемы передачи адреса и запроса для передачи упомянутого множества сигналов запроса и множества адресных сигналов на кратной частоте шинного тактового сигнала в виде синхронной передачи от источника.
86. Шинный агент по п.85, в котором упомянутая первая фаза запроса и упомянутая вторая фаза запроса являются фазами запроса с двойной подкачкой.
87. Шинный агент по п.85, дополнительно содержащий интерфейс шины данных с учетверенной подкачкой.
88. Шинный агент по п.87, в котором упомянутые схемы передачи адреса и запроса содержат интерфейс шины адреса и запроса с учетверенной подкачкой.
89. Шинный агент по п. 85, дополнительно содержащий:
множество контактов данных для подсоединения к линиям данных шины;
множество контактов строба данных для подсоединения к линиям строба данных шины;
контакт общего тактового сигнала для подсоединения к линии общего тактового сигнала и для подачи шинного тактового сигнала, который предназначен для работы на частоте шинного тактового сигнала;
генератор строба данных для генерирования первого стробирующего данные сигнала и второго стробирующего данные сигнала на первом контакте строба данных и втором контакте строба данных, причем упомянутый первый стробирующий данные сигнал и упомянутый второй стробирующий данные сигнал имеют частоту строба данных вдвое выше упомянутой частоты шинного тактового сигнала;
схему передачи данных для передачи элементов данных, синхронизированных с первым фронтом упомянутого первого стробирующего данные сигнала, на упомянутое множество контактов данных и для передачи элементов данных, синхронизированных с первым фронтом упомянутого второго стробирующего данные сигнала, также на упомянутое множество контактов данных.
90. Шинный агент по п.89, дополнительно содержащий:
множество адресных контактов;
генератор адресного строба для генерирования первого адресного строба с частотой адресного строба, которая одинакова с упомянутой частотой шинного тактового сигнала;
схему передачи адреса для передачи адресных элементов, синхронизированных с первым фронтом упомянутого первого адресного строба, на упомянутое множество адресных контактов и для передачи адресных элементов, синхронизированных со вторым фронтом упомянутого первого адресного строба, также на упомянутое множество адресных контактов.
91. Шинный агент по п.90, дополнительно содержащий:
множество контактов запроса;
при этом упомянутая схема передачи адреса предназначена для передачи элементов запроса, синхронизированных с первым фронтом упомянутого первого адресного строба, на упомянутое множество контактов запроса и для элементов запроса, синхронизированных со вторым фронтом упомянутого первого адресного строба, также на упомянутое множество контактов запроса.
92. Шинный агент по п.85, дополнительно содержащий:
множество адресных контактов;
множество контактов запроса;
генератор адресного строба для генерирования первого адресного строба с частотой адресного строба, которая одинакова с упомянутой частотой шинного тактового сигнала;
схему передачи адреса для передачи адресных элементов, синхронизированных с первым фронтом упомянутого первого адресного строба, на упомянутое множество адресных контактов и для передачи адресных элементов, синхронизированных со вторым фронтом упомянутого первого адресного строба, также на упомянутое множество адресных контактов и для передачи элементов запроса, синхронизированных с первым фронтом упомянутого первого адресного строба, на упомянутое множество контактов запроса и для передачи элементов запроса, синхронизированных со вторым фронтом упомянутого первого адресного строба, также на упомянутое множество контактов запроса.
93. Шинный агент по п.92, в котором упомянутый первый адресный строб содержит два, по существу, идентичных адресных строба.
94. Шинный агент по п.93, в котором первый из двух, по существу, идентичных адресных стробов передается синхронизированным на первый поднабор из множества адресных контактов и множества контактов запроса и при этом второй из двух, по существу, идентичных адресных стробов передается синхронизированным на второй поднабор из множества адресных контактов и множества контактов запроса, причем этот второй поднабор состоит из остальных из множества адресных контактов и множества контактов запроса, которые не входят в первый поднабор.
95. Шинный агент по п.87, в котором упомянутый интерфейс шины данных с учетверенной подкачкой является интерфейсом шины данных с учетверенной подкачкой синхронной передачи от источника.
96. Способ для выполнения транзакций по шине, содержащий следующие этапы:
инициирование первой фазы запроса для первой транзакции;
инициирование второй фазы запроса для второй транзакции в конвейерном режиме до завершения упомянутой первой транзакции, причем упомянутая вторая фаза запроса для упомянутой второй транзакции инициируется через два шинных такта после первой фазы запроса для первой транзакции, что измеряется установлением второго стробирующего адрес сигнала для второй транзакции, происходящим через два шинных такта после установления первого стробирующего адрес сигнала.
97. Способ по п.96, содержащий дополнительно следующие этапы:
обеспечение множества пар комплементарных стробирующих сигналов в фазе данных;
обеспечение четырех элементов данных на период шинного тактового сигнала, передаваемых в виде синхронной передачи от источника вместе с упомянутым множеством пар комплементарных стробирующих сигналов.
98. Способ по п.97, содержащий дополнительно следующие этапы:
обеспечение множества адресных стробов;
обеспечение двух элементов запроса и двух адресных элементов на период шинного тактового сигнала, передаваемых в виде синхронной передачи от источника вместе с упомянутым множеством адресных стробов.
99. Способ по п.98, в котором упомянутый этап обеспечения четырех элементов данных содержит следующие этапы:
обеспечение первого элемента данных, синхронизированного с первым фронтом первого вида первого из пары стробирующих данные сигналов;
обеспечение второго элемента данных, синхронизированного с первым фронтом первого вида второго из пары стробирующих данные сигналов;
обеспечение третьего элемента данных, синхронизированного со вторым фронтом первого вида первого из пары стробирующих данные сигналов;
обеспечение четвертого элемента данных, синхронизированного со вторым фронтом первого вида второго из пары стробирующих данные сигналов.
100. Способ по п.99, в котором упомянутый первый вид фронта является спадающим фронтом.
101. Способ по п.99, в котором упомянутый этап обеспечения двух элементов запроса и двух адресных элементов содержит следующие этапы:
обеспечение первого адресного элемента и первого элемента запроса, синхронизированных с первым фронтом по меньшей мере одного из множества стробирующих адрес сигналов;
обеспечение второго адресного элемента и второго элемента запроса, синхронизированных со вторым фронтом по меньшей мере одного из множества стробирующих адрес сигналов.
102. Способ по п.101, в котором упомянутый первый фронт является спадающим фронтом адресного строба, а второй фронт является нарастающим фронтом адресного строба.
103. Система для выполнения транзакций по шине, содержащая:
шину;
один или более шинных агентов, содержащих:
множество контактов сигнала запроса для подсоединения к линиям сигнала запроса;
контакт стробирующего адрес сигнала для подсоединения к линии стробирующего адрес сигнала;
схему запроса, способную инициировать вторую фазу запроса через два такта после первой фазы запроса путем установления множества сигналов запроса на упомянутом множестве контактов сигнала запроса и стробирующего адрес сигнала второй транзакции на контакте стробирующего адрес сигнала для второй транзакции через два периода шинного тактового сигнала после того, как происходит установление стробирующего адрес сигнала первой транзакции для первой транзакции на упомянутом контакте стробирующего адрес сигнала;
схему передачи адреса и запроса для передачи упомянутого множества сигналов запроса и множества адресных сигналов на кратной частоте шинного тактового сигнала в виде синхронной передачи от источника.
104. Система по п.103, в которой упомянутые один или более шинных агентов содержат дополнительно интерфейс шины данных с учетверенной подкачкой с синхронной передачей от источника.
105. Система по п.104, в которой упомянутые один или более шинных агентов дополнительно содержат интерфейс адресной шины с двойной подкачкой с синхронной передачей от источника.
106. Система по п.105, в которой упомянутая схема передачи адреса и запроса упомянутых одного или более шинных агентов содержит интерфейс шины адреса и запроса с двойной подкачкой.
107. Система по п.106, в которой упомянутая система содержит дополнительно множество управляющих сигналов, которые работают согласно протоколу с общим тактовым сигналом.
RU2002120499/09A 1999-12-29 2000-12-29 Архитектура и протокол шины с учетверенной подкачкой RU2271566C2 (ru)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/474,058 1999-12-29
US09/474,058 US6609171B1 (en) 1999-12-29 1999-12-29 Quad pumped bus architecture and protocol

Publications (2)

Publication Number Publication Date
RU2002120499A RU2002120499A (ru) 2004-03-10
RU2271566C2 true RU2271566C2 (ru) 2006-03-10

Family

ID=23882019

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2002120499/09A RU2271566C2 (ru) 1999-12-29 2000-12-29 Архитектура и протокол шины с учетверенной подкачкой

Country Status (16)

Country Link
US (6) US6609171B1 (ru)
EP (2) EP1242898B1 (ru)
JP (1) JP4194274B2 (ru)
KR (1) KR100565101B1 (ru)
CN (4) CN1900924B (ru)
AT (1) ATE377797T1 (ru)
AU (1) AU2463101A (ru)
BR (1) BRPI0016834B1 (ru)
DE (2) DE60037036T2 (ru)
GB (1) GB2374264B (ru)
HK (1) HK1046964B (ru)
RU (1) RU2271566C2 (ru)
SG (2) SG123610A1 (ru)
TW (1) TW559704B (ru)
WO (1) WO2001048621A1 (ru)
ZA (1) ZA200203946B (ru)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2520356C1 (ru) * 2011-06-30 2014-06-20 Интернэшнл Бизнес Машинз Корпорейшн Облегчение операций ввода-вывода в режиме передачи между канальной подсистемой и устройствами ввода-вывода

Families Citing this family (97)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6609171B1 (en) * 1999-12-29 2003-08-19 Intel Corporation Quad pumped bus architecture and protocol
US6965648B1 (en) * 2000-05-04 2005-11-15 Sun Microsystems, Inc. Source synchronous link integrity validation
US6745268B1 (en) * 2000-08-11 2004-06-01 Micron Technology, Lnc. Capacitive multidrop bus compensation
US6816932B2 (en) * 2000-10-06 2004-11-09 Broadcom Corporation Bus precharge during a phase of a clock signal to eliminate idle clock cycle
US6678767B1 (en) * 2000-10-06 2004-01-13 Broadcom Corp Bus sampling on one edge of a clock signal and driving on another edge
US6993612B2 (en) * 2000-12-07 2006-01-31 Micron Technology, Inc. Arbitration method for a source strobed bus
US6901475B2 (en) * 2000-12-07 2005-05-31 Micron Technology, Inc. Link bus for a hub based computer architecture
US7676588B2 (en) * 2001-10-05 2010-03-09 International Business Machines Corporation Programmable network protocol handler architecture
EP1316891B1 (de) * 2001-12-03 2007-10-10 Infineon Technologies AG Datenübertragungseinrichtung
US7000065B2 (en) * 2002-01-02 2006-02-14 Intel Corporation Method and apparatus for reducing power consumption in a memory bus interface by selectively disabling and enabling sense amplifiers
US6983348B2 (en) * 2002-01-24 2006-01-03 Intel Corporation Methods and apparatus for cache intervention
US7085889B2 (en) * 2002-03-22 2006-08-01 Intel Corporation Use of a context identifier in a cache memory
EP1512079B1 (en) * 2002-05-24 2019-02-27 Intel Corporation Pseudo multiport data memory has stall facility
WO2003100704A2 (en) * 2002-05-28 2003-12-04 Cadence Design Systems, Inc. Assertion-based transaction recording
TWI282513B (en) * 2002-06-12 2007-06-11 Mediatek Inc A pre-fetch device of instruction for an embedded system
TW579467B (en) * 2002-07-24 2004-03-11 Via Tech Inc Method for blocking request to bus
US7200730B2 (en) * 2002-09-16 2007-04-03 Texas Instruments Incorporated Method of operating a memory at high speed using a cycle ready status output signal
US7234034B2 (en) * 2002-09-16 2007-06-19 Texas Instruments Incorporated Self-clocking memory device
US6956789B2 (en) * 2002-09-16 2005-10-18 Texas Instruments Incorporated Cycle ready circuit for self-clocking memory device
US8185602B2 (en) 2002-11-05 2012-05-22 Newisys, Inc. Transaction processing using multiple protocol engines in systems having multiple multi-processor clusters
US7051229B2 (en) * 2002-12-03 2006-05-23 Alcatel Canada Inc. Logical bus overlay for increasing the existing system bus data rate
US7152167B2 (en) * 2002-12-11 2006-12-19 Intel Corporation Apparatus and method for data bus power control
US7216240B2 (en) * 2002-12-11 2007-05-08 Intel Corporation Apparatus and method for address bus power control
US20040128416A1 (en) 2002-12-11 2004-07-01 Tsvika Kurts Apparatus and method for address bus power control
US20040117708A1 (en) * 2002-12-16 2004-06-17 Ellis David G. Pre-announce signaling for interconnect built-in self test
US6922769B2 (en) * 2002-12-23 2005-07-26 Intel Corporation Apparatus and method for reduction of power consumption in OS that use flat segmentation memory model
US20040153611A1 (en) * 2003-02-04 2004-08-05 Sujat Jamil Methods and apparatus for detecting an address conflict
US7054988B2 (en) * 2003-04-17 2006-05-30 Lsi Logic Corporation Bus interface for processor
US7478025B1 (en) * 2003-04-18 2009-01-13 Unisys Corporation System and method to support dynamic partitioning of units to a shared resource
US20040230188A1 (en) * 2003-05-12 2004-11-18 Iulian Cioanta Treatment catheters with thermally insulated regions
US7287126B2 (en) * 2003-07-30 2007-10-23 Intel Corporation Methods and apparatus for maintaining cache coherency
US9087036B1 (en) 2004-08-12 2015-07-21 Sonics, Inc. Methods and apparatuses for time annotated transaction level modeling
US7665069B2 (en) * 2003-10-31 2010-02-16 Sonics, Inc. Method and apparatus for establishing a quality of service model
US8504992B2 (en) * 2003-10-31 2013-08-06 Sonics, Inc. Method and apparatus for establishing a quality of service model
US7113000B2 (en) * 2003-12-10 2006-09-26 Hewlett-Packard Development Company, L.P. Bus agent having multiple reference levels
US7178048B2 (en) * 2003-12-23 2007-02-13 Hewlett-Packard Development Company, L.P. System and method for signal synchronization based on plural clock signals
US7057414B2 (en) * 2004-01-07 2006-06-06 International Business Machines Corporation Avoiding oscillation in self-synchronous bi-directional communication system
US20050262376A1 (en) * 2004-05-21 2005-11-24 Mcbain Richard A Method and apparatus for bussed communications
US7389375B2 (en) * 2004-07-30 2008-06-17 International Business Machines Corporation System, method and storage medium for a multi-mode memory buffer device
US20060036826A1 (en) * 2004-07-30 2006-02-16 International Business Machines Corporation System, method and storage medium for providing a bus speed multiplier
US7224595B2 (en) * 2004-07-30 2007-05-29 International Business Machines Corporation 276-Pin buffered memory module with enhanced fault tolerance
US7296129B2 (en) * 2004-07-30 2007-11-13 International Business Machines Corporation System, method and storage medium for providing a serialized memory interface with a bus repeater
US7539800B2 (en) * 2004-07-30 2009-05-26 International Business Machines Corporation System, method and storage medium for providing segment level sparing
US20060075164A1 (en) * 2004-09-22 2006-04-06 Ooi Eng H Method and apparatus for using advanced host controller interface to transfer data
US7305574B2 (en) * 2004-10-29 2007-12-04 International Business Machines Corporation System, method and storage medium for bus calibration in a memory subsystem
US7331010B2 (en) * 2004-10-29 2008-02-12 International Business Machines Corporation System, method and storage medium for providing fault detection and correction in a memory subsystem
US7395476B2 (en) * 2004-10-29 2008-07-01 International Business Machines Corporation System, method and storage medium for providing a high speed test interface to a memory subsystem
US7356737B2 (en) * 2004-10-29 2008-04-08 International Business Machines Corporation System, method and storage medium for testing a memory module
US7512762B2 (en) 2004-10-29 2009-03-31 International Business Machines Corporation System, method and storage medium for a memory subsystem with positional read data latency
US7277988B2 (en) * 2004-10-29 2007-10-02 International Business Machines Corporation System, method and storage medium for providing data caching and data compression in a memory subsystem
US7441060B2 (en) * 2004-10-29 2008-10-21 International Business Machines Corporation System, method and storage medium for providing a service interface to a memory system
US7299313B2 (en) * 2004-10-29 2007-11-20 International Business Machines Corporation System, method and storage medium for a memory subsystem command interface
TWI268427B (en) * 2004-11-02 2006-12-11 Via Tech Inc Coordinating method of bus data transmission specification
TWI304935B (en) * 2004-11-02 2009-01-01 Via Tech Inc Method for determining data transmission specification and combination of bridge chipset and memory used in the same
TWI256558B (en) * 2004-11-02 2006-06-11 Via Tech Inc Method for coordinating bus data transmission specification and CPU and bridge chip used in the same
US20060161743A1 (en) * 2005-01-18 2006-07-20 Khaled Fekih-Romdhane Intelligent memory array switching logic
US20060171233A1 (en) * 2005-01-18 2006-08-03 Khaled Fekih-Romdhane Near pad ordering logic
KR100606244B1 (ko) * 2005-02-11 2006-07-28 삼성전자주식회사 데이터 스트로브 신호에 동기 되어 전송되는 데이터의 캡쳐 방법 및 이를 위한 데이터 캡쳐 회로
US7340568B2 (en) * 2005-02-11 2008-03-04 International Business Machines Corporation Reducing number of rejected snoop requests by extending time to respond to snoop request
US7529955B2 (en) 2005-06-30 2009-05-05 Intel Corporation Dynamic bus parking
US7543094B2 (en) 2005-07-05 2009-06-02 Via Technologies, Inc. Target readiness protocol for contiguous write
CN100461142C (zh) * 2005-07-05 2009-02-11 威盛电子股份有限公司 微处理器、处理器总线系统、及执行稀疏写入处理的方法
US7457901B2 (en) * 2005-07-05 2008-11-25 Via Technologies, Inc. Microprocessor apparatus and method for enabling variable width data transfers
US7441064B2 (en) * 2005-07-11 2008-10-21 Via Technologies, Inc. Flexible width data protocol
US7502880B2 (en) * 2005-07-11 2009-03-10 Via Technologies, Inc. Apparatus and method for quad-pumped address bus
CN100435123C (zh) * 2005-07-19 2008-11-19 威盛电子股份有限公司 用于稀疏线写操作的装置和方法
US7590787B2 (en) * 2005-07-19 2009-09-15 Via Technologies, Inc. Apparatus and method for ordering transaction beats in a data transfer
US7444472B2 (en) * 2005-07-19 2008-10-28 Via Technologies, Inc. Apparatus and method for writing a sparsely populated cache line to memory
US7444448B2 (en) * 2005-08-03 2008-10-28 Via Technologies, Inc. Data bus mechanism for dynamic source synchronized sampling adjust
US7634609B2 (en) * 2005-09-29 2009-12-15 Via Technologies, Inc. Data transmission coordinating method
US20070073977A1 (en) * 2005-09-29 2007-03-29 Safranek Robert J Early global observation point for a uniprocessor system
US7757031B2 (en) * 2005-10-24 2010-07-13 Via Technologies, Inc. Data transmission coordinating method and system
US7478259B2 (en) 2005-10-31 2009-01-13 International Business Machines Corporation System, method and storage medium for deriving clocks in a memory system
US7685392B2 (en) * 2005-11-28 2010-03-23 International Business Machines Corporation Providing indeterminate read data latency in a memory system
US7636813B2 (en) * 2006-05-22 2009-12-22 International Business Machines Corporation Systems and methods for providing remote pre-fetch buffers
US7594055B2 (en) * 2006-05-24 2009-09-22 International Business Machines Corporation Systems and methods for providing distributed technology independent memory controllers
US7584336B2 (en) * 2006-06-08 2009-09-01 International Business Machines Corporation Systems and methods for providing data modification operations in memory subsystems
US7669086B2 (en) 2006-08-02 2010-02-23 International Business Machines Corporation Systems and methods for providing collision detection in a memory system
US7581073B2 (en) * 2006-08-09 2009-08-25 International Business Machines Corporation Systems and methods for providing distributed autonomous power management in a memory system
US20080062892A1 (en) * 2006-09-07 2008-03-13 Honeywell International Inc. High speed bus protocol with programmable scheduler
US7870459B2 (en) 2006-10-23 2011-01-11 International Business Machines Corporation High density high reliability memory module with power gating and a fault tolerant address and command bus
US7477522B2 (en) * 2006-10-23 2009-01-13 International Business Machines Corporation High density high reliability memory module with a fault tolerant address and command bus
US8868397B2 (en) * 2006-11-20 2014-10-21 Sonics, Inc. Transaction co-validation across abstraction layers
KR20080047027A (ko) * 2006-11-24 2008-05-28 주식회사 하이닉스반도체 반도체 메모리 장치 및 그 구동 방법
KR100903381B1 (ko) * 2006-11-24 2009-06-23 주식회사 하이닉스반도체 반도체 메모리 장치 및 그의 구동 방법
KR100915811B1 (ko) * 2006-12-07 2009-09-07 주식회사 하이닉스반도체 반도체 메모리 장치의 데이터 입출력 제어 신호 생성 회로
US7721140B2 (en) 2007-01-02 2010-05-18 International Business Machines Corporation Systems and methods for improving serviceability of a memory system
US7603526B2 (en) * 2007-01-29 2009-10-13 International Business Machines Corporation Systems and methods for providing dynamic memory pre-fetch
US20090132747A1 (en) * 2007-11-19 2009-05-21 International Business Machines Corporation Structure for universal peripheral processor system for soc environments on an integrated circuit
US8139697B2 (en) * 2008-01-29 2012-03-20 United Microelectronics Corp. Sampling method and data recovery circuit using the same
US8020167B2 (en) * 2008-05-05 2011-09-13 Dell Products L.P. System and method for automatic throttling of resources in an information handling system chassis
KR101642833B1 (ko) * 2010-02-05 2016-07-26 삼성전자주식회사 클럭 임베디드 인터페이스 방법, 그 방법을 이용하는 송수신기 및 디스플레이 장치
JP5761331B2 (ja) * 2011-03-22 2015-08-12 富士通株式会社 入出力制御装置,情報処理システム,及びログ採取プログラム
US8683096B2 (en) * 2012-06-27 2014-03-25 Intel Corporation Configuration of data strobes
US20140233582A1 (en) * 2012-08-29 2014-08-21 Marvell World Trade Ltd. Semaphore soft and hard hybrid architecture
US9755818B2 (en) * 2013-10-03 2017-09-05 Qualcomm Incorporated Method to enhance MIPI D-PHY link rate with minimal PHY changes and no protocol changes
CN105390982B (zh) * 2015-11-24 2018-07-17 国家电网公司 基于仿生视觉分析的输电设备总线型评价系统

Family Cites Families (63)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4763243A (en) * 1984-06-21 1988-08-09 Honeywell Bull Inc. Resilient bus system
US4858173A (en) * 1986-01-29 1989-08-15 Digital Equipment Corporation Apparatus and method for responding to an aborted signal exchange between subsystems in a data processing system
JPS62280948A (ja) * 1986-05-29 1987-12-05 Fanuc Ltd バス調停方式
US5341487A (en) * 1991-12-20 1994-08-23 International Business Machines Corp. Personal computer having memory system with write-through cache and pipelined snoop cycles
US5280587A (en) * 1992-03-31 1994-01-18 Vlsi Technology, Inc. Computer system in which a bus controller varies data transfer rate over a bus based on a value of a subset of address bits and on a stored value
US5469547A (en) * 1992-07-17 1995-11-21 Digital Equipment Corporation Asynchronous bus interface for generating individual handshake signal for each data transfer based on associated propagation delay within a transaction
JP3369227B2 (ja) * 1992-11-09 2003-01-20 株式会社東芝 プロセッサ
US5615343A (en) * 1993-06-30 1997-03-25 Intel Corporation Method and apparatus for performing deferred transactions
TW255022B (ru) 1993-06-30 1995-08-21 Intel Corp
US5568620A (en) 1993-06-30 1996-10-22 Intel Corporation Method and apparatus for performing bus transactions in a computer system
GB2324230B (en) 1994-03-01 1998-12-16 Intel Corp High performance symmetric arbitration protocol with support for I/O requirements
US5550988A (en) * 1994-03-01 1996-08-27 Intel Corporation Apparatus and method for performing error correction in a multi-processor system
US5548733A (en) 1994-03-01 1996-08-20 Intel Corporation Method and apparatus for dynamically controlling the current maximum depth of a pipe lined computer bus system
US5572703A (en) * 1994-03-01 1996-11-05 Intel Corporation Method and apparatus for snoop stretching using signals that convey snoop results
US5784579A (en) * 1994-03-01 1998-07-21 Intel Corporation Method and apparatus for dynamically controlling bus access from a bus agent based on bus pipeline depth
TW400483B (en) 1994-03-01 2000-08-01 Intel Corp High performance symmetric arbitration protocol with support for I/O requirements
DE69531933T2 (de) * 1994-03-01 2004-08-12 Intel Corp., Santa Clara Busarchitektur in hochgradiger pipeline-ausführung
US5535340A (en) * 1994-05-20 1996-07-09 Intel Corporation Method and apparatus for maintaining transaction ordering and supporting deferred replies in a bus bridge
US6029217A (en) * 1994-10-03 2000-02-22 International Business Machines Corporation Queued arbitration mechanism for data processing system
US5596729A (en) * 1995-03-03 1997-01-21 Compaq Computer Corporation First arbiter coupled to a first bus receiving requests from devices coupled to a second bus and controlled by a second arbiter on said second bus
US5925099A (en) * 1995-06-15 1999-07-20 Intel Corporation Method and apparatus for transporting messages between processors in a multiple processor system
US5710906A (en) * 1995-07-07 1998-01-20 Opti Inc. Predictive snooping of cache memory for master-initiated accesses
KR0164395B1 (ko) * 1995-09-11 1999-02-18 김광호 반도체 메모리 장치와 그 리이드 및 라이트 방법
US5696910A (en) * 1995-09-26 1997-12-09 Intel Corporation Method and apparatus for tracking transactions in a pipelined bus
US5948094A (en) 1995-09-29 1999-09-07 Intel Corporation Method and apparatus for executing multiple transactions within a single arbitration cycle
US5812803A (en) * 1995-09-29 1998-09-22 Intel Corporation Method and apparatus for controlling data transfers between a bus and a memory device using a multi-chip memory controller
US5778438A (en) * 1995-12-06 1998-07-07 Intel Corporation Method and apparatus for maintaining cache coherency in a computer system with a highly pipelined bus and multiple conflicting snoop requests
US5838995A (en) * 1995-12-18 1998-11-17 International Business Machines Corporation System and method for high frequency operation of I/O bus
US5802132A (en) * 1995-12-29 1998-09-01 Intel Corporation Apparatus for generating bus clock signals with a 1/N characteristic in a 2/N mode clocking scheme
EP0882266A1 (en) * 1996-02-20 1998-12-09 Intergraph Corporation High-availability super server
JP3643425B2 (ja) * 1996-02-29 2005-04-27 富士通株式会社 データ処理方法、データ処理装置及びインターフェイスコントローラ
WO1998010350A1 (en) * 1996-09-06 1998-03-12 Intel Corporation A data flow control mechanism for a bus supporting two-and three-agent transactions
US5867728A (en) * 1996-12-17 1999-02-02 Compaq Computer Corp. Preventing corruption in a multiple processor computer system during a peripheral device configuration cycle
US6012118A (en) 1996-12-30 2000-01-04 Intel Corporation Method and apparatus for performing bus operations in a computer system using deferred replies returned without using the address bus
US5870567A (en) * 1996-12-31 1999-02-09 Compaq Computer Corporation Delayed transaction protocol for computer system bus
US6065101A (en) * 1997-06-12 2000-05-16 International Business Machines Corporation Pipelined snooping of multiple L1 cache lines
US6336159B1 (en) 1997-06-25 2002-01-01 Intel Corporation Method and apparatus for transferring data in source-synchronous protocol and transferring signals in common clock protocol in multiple agent processing system
US5919254A (en) * 1997-06-25 1999-07-06 Intel Corporation Method and apparatus for switching between source-synchronous and common clock data transfer modes in a multiple processing system
US5991855A (en) * 1997-07-02 1999-11-23 Micron Electronics, Inc. Low latency memory read with concurrent pipe lined snoops
US5978869A (en) 1997-07-21 1999-11-02 International Business Machines Corporation Enhanced dual speed bus computer system
US6108736A (en) * 1997-09-22 2000-08-22 Intel Corporation System and method of flow control for a high speed bus
US5964856A (en) * 1997-09-30 1999-10-12 Intel Corporation Mechanism for data strobe pre-driving during master changeover on a parallel bus
US6260091B1 (en) * 1997-10-20 2001-07-10 Intel Corporation Method and apparatus for performing out-of-order bus operations in which an agent only arbitrates for use of a data bus to send data with a deferred reply
US6092156A (en) 1997-11-05 2000-07-18 Unisys Corporation System and method for avoiding deadlocks utilizing split lock operations to provide exclusive access to memory during non-atomic operations
KR100255664B1 (ko) 1997-12-29 2000-05-01 윤종용 반도체 집적회로의 클락 포워딩 회로 및 클락포워딩 방법
US6006291A (en) * 1997-12-31 1999-12-21 Intel Corporation High-throughput interface between a system memory controller and a peripheral device
US6041380A (en) * 1998-01-21 2000-03-21 Micron Electronics, Inc. Method for increasing the number of devices capable of being operably connected to a host bus
US6223238B1 (en) * 1998-03-31 2001-04-24 Micron Electronics, Inc. Method of peer-to-peer mastering over a computer bus
US6172937B1 (en) * 1998-05-13 2001-01-09 Intel Corporation Multiple synthesizer based timing signal generation scheme
US6108721A (en) * 1998-06-29 2000-08-22 Hewlett-Packard Company Method and apparatus for ensuring data consistency between an i/o channel and a processor
US6275890B1 (en) * 1998-08-19 2001-08-14 International Business Machines Corporation Low latency data path in a cross-bar switch providing dynamically prioritized bus arbitration
US6205506B1 (en) * 1998-08-25 2001-03-20 Stmicroelectronics, Inc. Bus interface unit having multipurpose transaction buffer
US6449677B1 (en) * 1998-09-03 2002-09-10 Compaq Information Technologies Group, L.P. Method and apparatus for multiplexing and demultiplexing addresses of registered peripheral interconnect apparatus
US6102118A (en) * 1998-12-30 2000-08-15 Moore; Curt A. Multi-purpose adjustable centralizer system with tool
TW514788B (en) * 1999-04-23 2002-12-21 Via Tech Inc Method of delayed transaction in bus system and device using the method
US6272604B1 (en) * 1999-05-20 2001-08-07 International Business Machines Corporation Contingent response apparatus and method for maintaining cache coherency
US6487621B1 (en) * 1999-08-17 2002-11-26 Compaq Information Technologies Group, L.P. Architecture, system and method for ensuring an ordered transaction on at least one of a plurality of multi-processor buses that experience a hit-to-modified snoop cycle
US6615323B1 (en) * 1999-09-02 2003-09-02 Thomas Albert Petersen Optimizing pipelined snoop processing
US6591321B1 (en) * 1999-11-09 2003-07-08 International Business Machines Corporation Multiprocessor system bus protocol with group addresses, responses, and priorities
US6609171B1 (en) * 1999-12-29 2003-08-19 Intel Corporation Quad pumped bus architecture and protocol
US6681293B1 (en) * 2000-08-25 2004-01-20 Silicon Graphics, Inc. Method and cache-coherence system allowing purging of mid-level cache entries without purging lower-level cache entries
US6901475B2 (en) * 2000-12-07 2005-05-31 Micron Technology, Inc. Link bus for a hub based computer architecture
US6651122B2 (en) * 2000-12-07 2003-11-18 Micron Technology, Inc. Method of detecting a source strobe event using change detection

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2520356C1 (ru) * 2011-06-30 2014-06-20 Интернэшнл Бизнес Машинз Корпорейшн Облегчение операций ввода-вывода в режиме передачи между канальной подсистемой и устройствами ввода-вывода

Also Published As

Publication number Publication date
US20010037424A1 (en) 2001-11-01
US6804735B2 (en) 2004-10-12
KR20020089308A (ko) 2002-11-29
WO2001048621A1 (en) 2001-07-05
DE10085385B3 (de) 2011-12-08
CN1815463A (zh) 2006-08-09
AU2463101A (en) 2001-07-09
US6907487B2 (en) 2005-06-14
JP4194274B2 (ja) 2008-12-10
GB2374264A (en) 2002-10-09
DE60037036D1 (de) 2007-12-20
TW559704B (en) 2003-11-01
BRPI0016834B1 (pt) 2015-08-11
CN1900924B (zh) 2010-05-12
ZA200203946B (en) 2003-01-02
CN1900924A (zh) 2007-01-24
US20010037421A1 (en) 2001-11-01
SG123610A1 (en) 2006-07-26
US20020038397A1 (en) 2002-03-28
DE60037036T2 (de) 2008-08-21
DE10085385T1 (de) 2002-12-19
US20020147875A1 (en) 2002-10-10
US20020029307A1 (en) 2002-03-07
EP1881414A2 (en) 2008-01-23
CN1815463B (zh) 2014-03-05
HK1046964A1 (en) 2003-01-30
US6601121B2 (en) 2003-07-29
EP1242898B1 (en) 2007-11-07
RU2002120499A (ru) 2004-03-10
GB2374264B (en) 2004-04-07
US6807592B2 (en) 2004-10-19
ATE377797T1 (de) 2007-11-15
CN1415095A (zh) 2003-04-30
EP1242898A1 (en) 2002-09-25
HK1046964B (zh) 2004-07-23
EP1881414A3 (en) 2008-07-30
CN1230762C (zh) 2005-12-07
SG123609A1 (en) 2006-07-26
BR0016834A (pt) 2002-09-10
US6609171B1 (en) 2003-08-19
CN1558337A (zh) 2004-12-29
US6880031B2 (en) 2005-04-12
GB0216035D0 (en) 2002-08-21
CN100375075C (zh) 2008-03-12
JP2003518693A (ja) 2003-06-10
KR100565101B1 (ko) 2006-03-30

Similar Documents

Publication Publication Date Title
RU2271566C2 (ru) Архитектура и протокол шины с учетверенной подкачкой
US6405271B1 (en) Data flow control mechanism for a bus supporting two-and three-agent transactions
US6598103B2 (en) Transmission of signals synchronous to a common clock and transmission of data synchronous to strobes in a multiple agent processing system
US6065077A (en) Apparatus and method for a cache coherent shared memory multiprocessing system
JP3552250B2 (ja) 複数のデータ処理装置間に情報を転送する方法および装置
JP2565642B2 (ja) マルチプロセッサのための拡張プロセッサバッファインターフェース
EP1032880B1 (en) Method and apparatus for switching between source-synchronous and common clock data transfer modes in a multiple agent processing system
JP2004005657A (ja) 情報処理方法および装置
WO1994008303A1 (en) Method and apparatus for non-snoop window reduction
JPH05189383A (ja) マルチプロセッサデータ処理システム及びインターフェース装置
JPH0652096A (ja) データ処理システム内でアービタを用いてバス仲裁を実行する方法および装置
US6487621B1 (en) Architecture, system and method for ensuring an ordered transaction on at least one of a plurality of multi-processor buses that experience a hit-to-modified snoop cycle
US20020152343A1 (en) Arbitration method for a source strobed bus
US6742160B2 (en) Checkerboard parity techniques for a multi-pumped bus
WO1998010350A1 (en) A data flow control mechanism for a bus supporting two-and three-agent transactions
JPH09179815A (ja) バス制御装置
JPH1185674A (ja) Pciバス間におけるトランザクション通信方法及びコンピュータ・システム

Legal Events

Date Code Title Description
MM4A The patent is invalid due to non-payment of fees

Effective date: 20161230