RU2221271C2 - Система и способ обеспечения когерентности памяти в многошинной компьютерной системе - Google Patents

Система и способ обеспечения когерентности памяти в многошинной компьютерной системе Download PDF

Info

Publication number
RU2221271C2
RU2221271C2 RU99107385/09A RU99107385A RU2221271C2 RU 2221271 C2 RU2221271 C2 RU 2221271C2 RU 99107385/09 A RU99107385/09 A RU 99107385/09A RU 99107385 A RU99107385 A RU 99107385A RU 2221271 C2 RU2221271 C2 RU 2221271C2
Authority
RU
Russia
Prior art keywords
bus
coherence
specified
memory
transaction
Prior art date
Application number
RU99107385/09A
Other languages
English (en)
Other versions
RU99107385A (ru
Inventor
Пит Д. ВОГТ (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 RU99107385A publication Critical patent/RU99107385A/ru
Application granted granted Critical
Publication of RU2221271C2 publication Critical patent/RU2221271C2/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/14Handling requests for interconnection or transfer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0806Multiuser, multiprocessor or multiprocessing cache systems
    • G06F12/0815Cache consistency protocols
    • G06F12/0831Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means
    • G06F12/0833Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means in combination with broadcast means (e.g. for invalidation or updating)

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

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

Description

Текст описания в факсимильном виде (см. графическую часть)в

Claims (51)

1. Многошинная многопроцессорная система, содержащая системное запоминающее устройство, первую шину, связанную с указанным системным запоминающим устройством, к которой подключен по меньшей мере один кэш-элемент, выполненный с возможностью хранения значений данных, получаемых из системного запоминающего устройства, причем указанный кэш-элемент выполнен с возможностью поддержания информации о кэш-когерентности указанных значений данных посредством первого множества состояний когерентности, запоминающее устройство поддержания когерентности, связанное с указанной первой шиной и выполненное с возможностью поддержания записи о статусе когерентности указанных значений данных посредством второго множества состояний когерентности, содержащего меньшее число состояний когерентности, чем указанное первое множество состояний когерентности, вторую шину, связанную с указанным системным запоминающим устройством и выполненную с возможностью генерирования шинной транзакции, а также фильтр когерентности, входящий в матрицу памяти с множеством записей о вводе данных и связанный с указанной второй шиной и выполненный с возможностью контроля шинной транзакции во второй шине и запрета межшинных транзакций в указанной первой шине в зависимости от указанной записи о статусе когерентности.
2. Система по п.1, отличающаяся тем, что содержит множество кэш-элементов, поддерживающих информацию о кэш-когерентности посредством указанного первого множества состояний когерентности.
3. Система по п.1, отличающаяся тем, что указанная шинная транзакция идентифицирует адрес в памяти, связанный с одним из указанных значений данных.
4. Система по п.3, отличающаяся тем, что указанная запись о статусе когерентности содержит множество записей о вводе данных, каждая из которых содержит адрес памяти, связанный со значением целостности данных, хранимых в указанном кэш-элементе.
5. Система по п.1, отличающаяся тем, что каждая из указанных записей о вводе данных содержит указанное второе множество состояний когерентности.
6. Система по п.5, отличающаяся тем, что каждая из указанных записей о вводе данных также содержит по меньшей мере одно из состояний указанного второго множества состояний когерентности.
7. Система по п.6, отличающаяся тем, что каждый из указанных адресов в памяти непосредственно содержится на одной из указанных записей о вводе данных.
8. Способ обеспечения кэш-когерентности в многошинной системе, включающий в себя поддержание информации о статусе кэша, основанной на первом множестве состояний когерентности и связанной с первым множеством значений данных, присутствующих в кэш-элементах, подключенных к первой шине, поддержание записи о статусе когерентности, основанной на втором множестве состояний когерентности, связанном с указанными значениями данных, причем в этом втором множестве состояний когерентности используется меньшее число состояний, чем в указанном первом множестве состояний когерентности, передачу шинной транзакции во вторую шину, а также запрет межшинной транзакции в указанной первой шине в случае, если запись о статусе когерентности покажет, что в результате данной шинной транзакции не возникает нарушения когерентности памяти.
9. Способ по п.8, отличающийся тем, что указанная запись о статусе когерентности содержит по меньшей мере одну запись о вводе данных для каждого из указанных значений данных, причем каждая из записей о вводе данных содержит одно из состояний когерентности из указанного второго множества состояний когерентности.
10. Способ по п.9, отличающийся тем, что указанное действие запрета включает в себя действие по обращению к указанному вводу данных в указанной записи о статусе когерентности, связанной с данной шинной транзакцией, для определения, находится ли указанный ввод данных в недействительном состоянии.
11. Способ по п.10, отличающийся тем, что указанное действие запрета дополнительно включает в себя действие по обращению к указанному вводу данных в указанной записи о статусе когерентности, связанной с указанной шинной транзакцией, для определения, находится ли указанный ввод данных в состоянии коллективного пользования.
12. Способ по п.11, отличающийся тем, что дополнительно включает в себя действие по изменению указанного ввода данных, связанного с указанной шинной транзакцией в случае, когда указанный ввод данных находится в состоянии присвоения.
13. Способ по п.11, отличающийся тем, что дополнительно включает в себя действие по изменению состояния указанного ввода данных, связанного с указанной шинной транзакцией, из состояния присвоения в состояние коллективного пользования.
14. Способ по п.11, отличающийся тем, что дополнительно включает в себя действие по изменению состояния данного значения данных, связанного с шинной транзакцией, из состояния присвоения в недействительное состояние.
15. Многошинная многопроцессорная система, содержащая системное запоминающее устройство, системную шину, связанную с указанным системным запоминающим устройством, к которой подключен по меньшей мере один кэш-элемент, выполненный с возможностью хранения значений данных, получаемых из системного запоминающего устройства, причем указанный кэш-элемент выполнен с возможностью поддержания информации о кэш-когерентности указанных значений данных посредством первого множества состояний когерентности, запоминающее устройство поддержания когерентности, связанное с указанной системной шиной и выполненное с возможностью поддержания записи о статусе когерентности в системной шине указанных значений данных посредством второго множества состояний когерентности, содержащего меньшее число состояний когерентности, чем указанное первое множество состояний когерентности, шину ввода/вывода, связанную с указанным системным запоминающим устройством и выполненную с возможностью генерирования по меньшей мере одной шинной транзакции, а также фильтр когерентности, входящий в матрицу памяти с множеством записей о вводе данных, связанный с указанной шиной ввода/вывода, и выполненный с возможностью контроля шинной транзакции в указанной шине ввода/вывода, а также запрета межшинных транзакций в указанной системной шине в зависимости от записи о статусе когерентности в данной системной шине.
16. Система по п.15, отличающаяся тем, что указанный фильтр когерентности выполнен также с возможностью контроля прямого доступа к памяти в данной шине ввода/вывода и выполнения межшинных транзакций, необходимых для предотвращения смещения кэш-строк в указанном кэш-элементе.
17. Система по п.15, отличающаяся тем, что указанная шина ввода/вывода также имеет множество мостов ввода/вывода, содержащих внутренние кэш-элементы, выполненные с возможностью хранения второго множества значений данных, причем эти кэш-элементы ввода/вывода выполнены с возможностью сохранения информации о кэш-когерентности в отношении указанных значений данных посредством первого множества состояний когерентности.
18. Система по п.17, отличающаяся тем, что содержит запоминающее устройство поддержания когерентности в шине ввода/вывода, связанное с данной шиной и выполненное с возможностью записи статуса когерентности значений данных в данной шине ввода/вывода посредством указанного второго множества состояний когерентности.
19. Система по п.18, отличающаяся тем, что содержит фильтр когерентности системной шины, связанный с данной шиной и выполненный с возможностью контроля шинных транзакций в этой шине и запрета межшинных транзакций в указанной шине ввода/вывода, в зависимости от упомянутой записи о статусе когерентности в данной шине.
20. Способ обеспечения кэш-когерентности в многошинной системе, включающий в себя поддержание информации о статусе кэша, основанной на первом множестве состояний когерентности и связанной с первым множеством значений данных, присутствующих в кэш-элементах, подключенных к системной шине, поддержание записи о статусе когерентности, основанной на втором множестве состояний когерентности, связанном с указанными значениями данных, причем в этом втором множестве состояний когерентности используется меньшее число состояний, чем в указанном первом множестве состояний когерентности, передачу шинной транзакции в шину ввода/вывода, а также запрет межшинной транзакции в указанной системной шине в случае, если запись о статусе когерентности покажет, что в результате данной шинной транзакции в шине ввода/вывода не возникает нарушения когерентности памяти.
21. Способ по п.20, отличающийся тем, что указанное действие по передаче шинной транзакции в шину ввода/вывода является прямым доступом в память.
22. Способ по п.20, отличающийся тем, что дополнительно содержит действие по кэшированию множества значений данных, переданных в шину ввода/вывода.
23. Способ по п.22, отличающийся тем, что дополнительно содержит действие по поддержанию информации о статусе кэша, связанной с указанными значениями данных шины ввода/вывода, посредством указанного первого множества состояний когерентности.
24. Способ по п.23, отличающийся тем, что дополнительно содержит действие по поддержанию записи о статусе когерентности значений данных в шине ввода/вывода посредством указанного второго множества состояний когерентности.
25. Способ по п.24, отличающийся тем, что дополнительно содержит действие по передаче шинной транзакции в указанную системную шину, а также действие по запрету межшинной транзакции в указанной шине ввода/вывода, в случае, если запись о статусе когерентности покажет, что в результате данной транзакции в системной шине не возникает нарушения когерентности памяти.
26. Многошинная многопроцессорная система, содержащая системное запоминающее устройство, первую и вторую системные шины, связанные с указанным системным запоминающим устройством, к которым подключен по меньшей мере один кэш-элемент, выполненный с возможностью хранения значений данных, получаемых из системного запоминающего устройства, причем указанные кэш-элементы выполнены с возможностью поддержания информации о кэш-когерентности указанных значений данных посредством первого множества состояний когерентности, первое запоминающее устройство поддержания когерентности, связанное с указанной первой системной шиной и выполненное с возможностью поддержания первой записи о статусе когерентности указанных значений данных в кэш-элементах, подключенных к первой системной шине, посредством второго множества состояний когерентности, содержащего меньшее число состояний когерентности, чем указанное первое множество состояний когерентности, второе запоминающее устройство поддержания когерентности, связанное с указанной второй системной шиной и выполненное с возможностью поддержания второй записи о статусе когерентности указанных значений данных в кэш-элементах, подключенных ко второй системной шине, посредством указанного второго протокола когерентности, первый фильтр когерентности, входящий в матрицу памяти с множеством записей о вводе данных и связанный с указанной первой шиной и выполненный с возможностью контроля шинных транзакций в этой первой шине и запрета шинных транзакций в указанной второй шине в зависимости от указанной второй записи о статусе когерентности, а также второй фильтр когерентности, входящий в матрицу памяти с множеством записей о вводе данных и связанный с указанной второй шиной и выполненный с возможностью контроля шинной транзакции в этой второй шине и запрета межшинных транзакций в указанной первой шине в зависимости от указанной первой записи о статусе когерентности.
27. Система по п.26, отличающаяся тем, что содержит шину ввода/вывода, связанную с указанным системным запоминающим устройством, и множество устройств ввода/вывода, хранящих значения данных шины ввода/вывода по меньшей мере в одном кэш-элементе ввода/вывода, а также запоминающее устройство ввода/вывода, связанное с указанной шиной ввода/вывода и выполненное с возможностью поддержания записи о статусе когерентности значений данных в шине ввода/вывода посредством указанного второго протокола когерентности.
28. Система по п.27, отличающаяся тем, что указанный первый фильтр когерентности также связан с указанным запоминающим устройством поддержания когерентности шины ввода/вывода и выполнен с возможностью контроля шинных транзакций в указанной первой шине и запрета межшинных транзакций в указанной шине ввода/вывода в зависимости от указанной записи о статусе когерентности в этой шине ввода/вывода.
29. Система по п.27, отличающаяся тем, что указанный второй фильтр когерентности также связан с указанным запоминающим устройством поддержания когерентности шины ввода/вывода и выполнен с возможностью контроля шинных транзакций в указанной второй шине и запрета межшинных транзакций в указанной шине ввода/вывода в зависимости от указанной записи о статусе когерентности в этой шине ввода/вывода.
30. Система по п.27, отличающаяся тем, что указанный фильтр когерентности ввода/вывода также связан с указанным первым запоминающим устройством поддержания когерентности и указанным вторым запоминающим устройством поддержания когерентности и выполнен с возможностью контроля шинных транзакций в указанной первой шине и запрета межшинных транзакций в указанной первой шине в зависимости от указанной первой записи о статусе когерентности, а также запрета межшинных транзакций в указанной второй шине в зависимости от указанной второй записи о статусе когерентности.
31. Многошинная многопроцессорная система, содержащая системное запоминающее устройство, первую и вторую шины, связанные с указанным системным запоминающим устройством, к которым подключен по меньшей мере один кэш-элемент, выполненный с возможностью хранения значений данных, получаемых из системного запоминающего устройства, причем указанные кэш-элементы выполнены с возможностью поддержания информации о кэш-когерентности указанных значений данных посредством первого протокола когерентности, содержащего множество состояний когерентности, первое средство поддержания когерентности памяти, предназначенное для поддержания первой записи о статусе когерентности указанных значений данных посредством второго протокола когерентности, содержащего состояния когерентности, отличные от имеющихся в указанном первом протоколе когерентности, средство первого фильтра когерентности, входящего в матрицу памяти с множеством записей о вводе данных, и предназначенное для контроля шинных транзакций в указанной второй шине и запрета межшинных транзакций в указанной первой шине в зависимости от указанной первой записи о статусе когерентности.
32. Многошинная многопроцессорная система, содержащая системное запоминающее устройство, первую шину, связанную с указанным системным запоминающим устройством, к которой подключен по меньшей мере один кэш-элемент, выполненный с возможностью хранения значений данных, получаемых из системного запоминающего устройства, причем указанный кэш-элемент выполнен с возможностью поддержания информации о кэш-когерентности указанных значений данных посредством первого множества состояний когерентности, запоминающее устройство поддержания когерентности, связанное с указанной первой шиной и выполненное с возможностью поддержания записи о статусе когерентности указанных значений данных посредством второго множества состояний когерентности, отличного от указанного первого множества состояний когерентности, вторую шину, связанную с указанным системным запоминающим устройством и выполненную с возможностью генерирования шинной транзакции, а также фильтр когерентности, входящий в матрицу памяти с множеством записей о вводе данных, и связанный с указанной второй шиной и выполненный с возможностью контроля шинной транзакции во второй шине и запрета межшинных транзакций в указанной первой шине в зависимости от указанной записи о статусе когерентности.
33. Система по п.32, отличающаяся тем, что указанный фильтр когерентности содержит первое управляющее устройство поддержания когерентности, выполненное с возможностью получения адреса шинной транзакции и получения доступа к вводу данных в указанной записи о статусе когерентности, соответствующему адресу данной шинной транзакции.
34. Система по п.33, отличающаяся тем, что указанное первое управляющее устройство поддержания когерентности получает состояние когерентности, имеющееся на указанном вводе данных.
35. Система по п.34, отличающаяся тем, что указанный фильтр когерентности также содержит кодировщик цикла, идентифицирующий код указанной шинной транзакции.
36. Система по п.33, отличающаяся тем, что указанный фильтр когерентности также включает таблицу правил когерентности, имеющую указанный статус когерентности и код указанной шинной транзакции.
37. Способ обеспечения кэш-когерентности в многошинной системе, включающий в себя поддержание информации о статусе кэша, основанной на первом множестве состояний когерентности и связанной с первым множеством значений данных, присутствующих в кэш-элементах, подключенных к первой шине, поддержание записи о статусе когерентности, основанной на втором множестве состояний когерентности, связанном с указанными значениями данных, причем второе множество состояний когерентности отличается от указанного первого множества состояний когерентности, передачу шинной транзакции во вторую шину, а также запрет межшинной транзакции в указанной первой шине в случае, если запись о статусе когерентности покажет, что в результате данной шинной транзакции не возникает нарушения когерентности памяти.
38. Способ по п.37, отличающийся тем, что дополнительно содержит действие по осуществлению доступа к записи о вводе данных в указанной записи о статусе когерентности, соответствующей адресу указанной шинной транзакции.
39. Способ по п.37, отличающийся тем, что дополнительно содержит действие по получению статуса когерентности, имеющегося в указанном вводе данных.
40. Способ по п.39, отличающийся тем, что дополнительно содержит действие по кодированию указанной шинной транзакции для получения кода, идентифицирующего эту шинную транзакцию.
41. Способ по п.40, отличающийся тем, что дополнительно содержит действие по анализу указанного кода шинной транзакции и статуса когерентности для определения необходимости данной шинной транзакции для поддержания кэш-когерентности.
42. Многошинная многопроцессорная система, содержащая системное запоминающее устройство, первую и вторую шины, связанные с указанным системным запоминающим устройством, к которым подключено множество кэш-элементов, выполненных с возможностью проведения инспекций и поддержания информации о кэш-статусе множества значений данных, получаемых из системного запоминающего устройства, причем эти кэш-элементы выполнены также с возможностью внутреннего изменения указанной информации, связанной с некоторыми из указанных значений данных, без вывода вовне этих изменений, запоминающее устройство поддержания когерентности, связанное с указанной первой шиной и выполненное с возможностью поддержания записи о статусе когерентности указанных значений данных, полученных кэш-элементом этой первой шины, а также фильтр когерентности, входящий в матрицу памяти с множеством записей о вводе данных, и связанный с указанной второй шиной и выполненный с возможностью контроля шинных транзакций в этой второй шине и запрета межшинных транзакций в указанной первой шине, в зависимости от записи о статусе когерентности.
43. Способ обеспечения кэш-когерентности в многошинной системе, включающий в себя поддержание информации о статусе кэша, связанной с первым множеством значений данных, присутствующих в кэш-элементе, подключенном к системной шине, изменение этой информации внутри указанного кэш-элемента без вывода вовне этого изменения, поддержание записи о статусе когерентности, связанном с указанными значениями данных, передачу шинной транзакции во вторую шину, а также запрет межшинной транзакции в указанной системной шине в случае, если запись о статусе когерентности покажет, что в результате данной шинной транзакции не возникает нарушения когерентности памяти.
44. Многошинная многопроцессорная система, содержащая первую шину с по меньшей мере одним подключенным к ней процессором, вторую шину с по меньшей мере одним подключенным к ней процессором, многопортовую память, подключенную к указанным первой и второй шинам и имеющую накопитель (пул) ячеек памяти, выполненный с возможностью передачи шинной транзакции между первой и второй шинами, причем каждая из этих ячеек памяти способна хранить шинный код, идентифицирующий первую или вторую шину как шину назначения, а также хранить информацию о шинной транзакции, предписывающую данной шине назначения выполнить эту транзакцию, первый приоритетный шинный кодировщик, подключенный к указанным ячейкам памяти и первой шине и выполненный с возможностью анализировать данные ячейки памяти с целью определения, какая из них отмечает указанную первую шину, а также второй приоритетный шинный кодировщик, подключенный к указанным ячейкам памяти и первой шине и выполненный с возможностью анализировать данные ячейки памяти с целью определения, какая из них отмечает указанную вторую шину.
45. Система по п.44, отличающаяся тем, что также содержит кодировщик свободных ячеек, выполненный с возможностью определения, какие ячейки памяти свободны для хранения информации о шинной транзакции.
46. Система по п.44, отличающаяся тем, что также содержит множество адресных компараторов, сравнивающих новую шинную транзакцию с шинными транзакциями, находящимися в упомянутых ячейках памяти и выполненных с возможностью индикации возникновения адресного конфликта между новой шинной транзакцией и транзакциями в ячейках памяти.
47. Система по п.44, отличающаяся тем, что каждое из упомянутых запоминающих устройств содержит адресную ячейку, запросную ячейку и ячейку данных.
48. Система по п.47, отличающаяся тем, что каждая из адресных ячеек выполнена с возможностью хранения адресной информации о шинной транзакции.
49. Система по п.48, отличающаяся тем, что каждая из адресных ячеек также выполнена с возможностью хранения рабочей информации.
50. Система по п.47, отличающаяся тем, что каждая из запросных ячеек выполнена с возможностью хранения информации об указанных шинном коде и коде шинной транзакции.
51. Система по п.47, отличающаяся тем, что каждая из ячеек данных выполнена с возможностью хранения данных об указанной шинной транзакции.
RU99107385/09A 1996-09-16 1997-09-16 Система и способ обеспечения когерентности памяти в многошинной компьютерной системе RU2221271C2 (ru)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/714,750 US5897656A (en) 1996-09-16 1996-09-16 System and method for maintaining memory coherency in a computer system having multiple system buses
US08/714,750 1996-09-16

Publications (2)

Publication Number Publication Date
RU99107385A RU99107385A (ru) 2001-02-20
RU2221271C2 true RU2221271C2 (ru) 2004-01-10

Family

ID=24871306

Family Applications (1)

Application Number Title Priority Date Filing Date
RU99107385/09A RU2221271C2 (ru) 1996-09-16 1997-09-16 Система и способ обеспечения когерентности памяти в многошинной компьютерной системе

Country Status (9)

Country Link
US (2) US5897656A (ru)
EP (1) EP1021768A4 (ru)
JP (1) JP4316016B2 (ru)
KR (1) KR100491435B1 (ru)
CN (1) CN1130644C (ru)
AU (1) AU4345197A (ru)
CA (1) CA2264518C (ru)
RU (1) RU2221271C2 (ru)
WO (1) WO1998011488A1 (ru)

Families Citing this family (63)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6581126B1 (en) * 1996-12-20 2003-06-17 Plx Technology, Inc. Method, system and apparatus for a computer subsystem interconnection using a chain of bus repeaters
US6073225A (en) * 1997-06-24 2000-06-06 Intel Corporation Method and apparatus for monitoring bus transactions based on cycle type and memory address range
US7197625B1 (en) * 1997-10-09 2007-03-27 Mips Technologies, Inc. Alignment and ordering of vector elements for single instruction multiple data processing
US6516442B1 (en) 1997-12-07 2003-02-04 Conexant Systems, Inc. Channel interface and protocols for cache coherency in a scalable symmetric multiprocessor system
US6065077A (en) 1997-12-07 2000-05-16 Hotrail, Inc. Apparatus and method for a cache coherent shared memory multiprocessing system
US6292705B1 (en) 1998-09-29 2001-09-18 Conexant Systems, Inc. Method and apparatus for address transfers, system serialization, and centralized cache and transaction control, in a symetric multiprocessor system
US6633945B1 (en) 1997-12-07 2003-10-14 Conexant Systems, Inc. Fully connected cache coherent multiprocessing systems
US6418537B1 (en) 1997-12-07 2002-07-09 Conexant Systems, Inc. Accurate timing calibration for each of multiple high-speed clocked receivers using a single DLL
US6134635A (en) * 1997-12-09 2000-10-17 Intel Corporation Method and apparatus of resolving a deadlock by collapsing writebacks to a memory
US6334172B1 (en) * 1998-02-17 2001-12-25 International Business Machines Corporation Cache coherency protocol with tagged state for modified values
US6289419B1 (en) * 1998-03-06 2001-09-11 Sharp Kabushiki Kaisha Consistency control device merging updated memory blocks
US6295598B1 (en) * 1998-06-30 2001-09-25 Src Computers, Inc. Split directory-based cache coherency technique for a multi-processor computer system
US6304945B1 (en) 1999-05-13 2001-10-16 Compaq Computer Corporation Method and apparatus for maintaining cache coherency in a computer system having multiple processor buses
US6469988B1 (en) 1999-07-08 2002-10-22 Conexant Systems, Inc. Low-level circuit implementation of signal flow graphs for real-time signal processing of high-speed digital signals
US6643787B1 (en) 1999-10-19 2003-11-04 Rambus Inc. Bus system optimization
JP3946393B2 (ja) * 1999-10-19 2007-07-18 株式会社東芝 階層構造をもつ並列計算機
US7558923B1 (en) 1999-12-22 2009-07-07 Intel Corporation Prevention of live-lock in a multi-processor system
US6662278B1 (en) * 2000-09-22 2003-12-09 Intel Corporation Adaptive throttling of memory acceses, such as throttling RDRAM accesses in a real-time system
US6868481B1 (en) * 2000-10-31 2005-03-15 Hewlett-Packard Development Company, L.P. Cache coherence protocol for a multiple bus multiprocessor system
US7085866B1 (en) * 2002-02-19 2006-08-01 Hobson Richard F Hierarchical bus structure and memory access protocol for multiprocessor systems
US6959372B1 (en) * 2002-02-19 2005-10-25 Cogent Chipware Inc. Processor cluster architecture and associated parallel processing methods
US6757790B2 (en) * 2002-02-19 2004-06-29 Emc Corporation Distributed, scalable data storage facility with cache memory
CN100401731C (zh) * 2002-06-15 2008-07-09 华为技术有限公司 高速数据链路控制协议接收处理模块及其数据处理方法
CN1293739C (zh) * 2002-06-15 2007-01-03 华为技术有限公司 高速数据链路控制协议发送处理模块及其数据处理方法
US8185602B2 (en) 2002-11-05 2012-05-22 Newisys, Inc. Transaction processing using multiple protocol engines in systems having multiple multi-processor clusters
US7191318B2 (en) * 2002-12-12 2007-03-13 Alacritech, Inc. Native copy instruction for file-access processor with copy-rule-based validation
US7032079B1 (en) * 2002-12-13 2006-04-18 Unisys Corporation System and method for accelerating read requests within a multiprocessor system
US7636815B1 (en) 2003-04-09 2009-12-22 Klaiber Alexander C System and method for handling direct memory accesses
US8751753B1 (en) 2003-04-09 2014-06-10 Guillermo J. Rozas Coherence de-coupling buffer
US7334123B2 (en) * 2003-05-02 2008-02-19 Advanced Micro Devices, Inc. Computer system including a bus bridge for connection to a security services processor
DE10329680A1 (de) * 2003-07-01 2005-02-10 Universität Stuttgart Prozessorarchitektur für exakte Zeigeridentifizierung
US8117392B2 (en) * 2003-10-22 2012-02-14 Intel Corporation Method and apparatus for efficient ordered stores over an interconnection network
US20050216625A1 (en) * 2004-03-09 2005-09-29 Smith Zachary S Suppressing production of bus transactions by a virtual-bus interface
US7434008B2 (en) * 2004-04-23 2008-10-07 Hewlett-Packard Development Company, L.P. System and method for coherency filtering
US7398338B2 (en) * 2004-06-30 2008-07-08 Sap Ag Flexible and error resistant data buffering and connectivity
CN100463393C (zh) * 2004-08-20 2009-02-18 中兴通讯股份有限公司 一种异构系统之间数据安全共享的装置及方法
US7594081B2 (en) 2004-09-10 2009-09-22 Cavium Networks, Inc. Direct access to low-latency memory
JP2008512786A (ja) 2004-09-10 2008-04-24 カビウム・ネットワークス データ構造の選択的複製方法および装置
US7941585B2 (en) 2004-09-10 2011-05-10 Cavium Networks, Inc. Local scratchpad and data caching system
US7417883B2 (en) * 2004-12-30 2008-08-26 Intel Corporation I/O data interconnect reuse as repeater
US7366931B2 (en) 2004-12-30 2008-04-29 Intel Corporation Memory modules that receive clock information and are placed in a low power state
US7203780B2 (en) * 2005-02-22 2007-04-10 Kabushiki Kaisha Toshiba System and method for facilitating communication between devices on a bus using tags
JP4956900B2 (ja) * 2005-03-07 2012-06-20 富士通株式会社 アドレススヌープ方法及びマルチプロセッサシステム
US7386683B2 (en) * 2005-03-29 2008-06-10 International Business Machines Corporation Method and apparatus for filtering snoop requests in a point-to-point interconnect architecture
US7290074B2 (en) * 2005-04-06 2007-10-30 Kabushiki Kaisha Toshiba Back-off timing mechanism
US7971002B1 (en) 2005-04-07 2011-06-28 Guillermo Rozas Maintaining instruction coherency in a translation-based computer system architecture
US7373444B2 (en) * 2005-04-15 2008-05-13 Kabushiki Kaisha Toshiba Systems and methods for manipulating entries in a command buffer using tag information
US7738483B2 (en) * 2005-09-08 2010-06-15 Kabushiki Kaisha Toshiba Systems and methods for managing communication between master and slave devices
JP2007079958A (ja) * 2005-09-14 2007-03-29 Hitachi Ltd 記憶制御装置、データ処理方法、及びコンピュータプログラム
US20070088918A1 (en) * 2005-10-13 2007-04-19 Sun Microsystems, Inc. Tracking dependencies among memory requests
US8924653B2 (en) * 2006-10-31 2014-12-30 Hewlett-Packard Development Company, L.P. Transactional cache memory system
US7613859B2 (en) * 2007-09-12 2009-11-03 Kabushiki Kaisha Toshiba Back-off timing mechanism in a digital signal processor
JP5453872B2 (ja) * 2009-03-27 2014-03-26 日本電気株式会社 ディスクアレイ装置、ディスク制御装置、ディスクアレイ装置における負荷分散方法
WO2011048582A1 (en) * 2009-10-25 2011-04-28 Plurality Ltd. Shared cache for a tightly-coupled multiprocessor
FR2992446B1 (fr) * 2012-06-22 2015-04-10 Commissariat Energie Atomique Systeme et procede de traitement de donnees a gestion d'une coherence de caches dans un reseau de processeurs munis de memoires caches.
CN104298617B (zh) * 2014-08-20 2017-12-08 深圳大学 一种numa平台中非核部件数据流缓冲管理的优化方法及系统
WO2017012667A1 (en) 2015-07-22 2017-01-26 Huawei Technologies Co., Ltd. Hardware transactional memory in non volatile memory with log and no lock
US9921962B2 (en) * 2015-09-24 2018-03-20 Qualcomm Incorporated Maintaining cache coherency using conditional intervention among multiple master devices
US10102129B2 (en) * 2015-12-21 2018-10-16 Intel Corporation Minimizing snoop traffic locally and across cores on a chip multi-core fabric
EP3260986B1 (en) * 2016-06-23 2019-08-14 Advanced Micro Devices, Inc. Shadow tag memory to monitor state of cachelines at different cache level
US10073776B2 (en) 2016-06-23 2018-09-11 Advanced Micro Device, Inc. Shadow tag memory to monitor state of cachelines at different cache level
US10303603B2 (en) 2017-06-13 2019-05-28 Microsoft Technology Licensing, Llc Low power multi-core coherency
US10282298B2 (en) 2017-06-13 2019-05-07 Microsoft Technology Licensing, Llc Store buffer supporting direct stores to a coherence point

Family Cites Families (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4245344A (en) * 1979-04-02 1981-01-13 Rockwell International Corporation Processing system with dual buses
US4796232A (en) * 1987-10-20 1989-01-03 Contel Corporation Dual port memory controller
US4982321A (en) * 1987-10-23 1991-01-01 Honeywell Inc. Dual bus system
US5225374A (en) * 1988-05-13 1993-07-06 The United States Of America As Represented By The Secretary Of The Navy Method of fabricating a receptor-based sensor
US4953081A (en) * 1988-12-21 1990-08-28 International Business Machines Corporation Least recently used arbiter with programmable high priority mode and performance monitor
US5119485A (en) * 1989-05-15 1992-06-02 Motorola, Inc. Method for data bus snooping in a data processing system by selective concurrent read and invalidate cache operation
US5261066A (en) * 1990-03-27 1993-11-09 Digital Equipment Corporation Data processing system and method with small fully-associative cache and prefetch buffers
US5317718A (en) * 1990-03-27 1994-05-31 Digital Equipment Corporation Data processing system and method with prefetch buffers
US5325510A (en) * 1990-05-25 1994-06-28 Texas Instruments Incorporated Multiprocessor system and architecture with a computation system for minimizing duplicate read requests
US5115411A (en) * 1990-06-06 1992-05-19 Ncr Corporation Dual port memory system
EP0461926B1 (en) * 1990-06-15 1998-09-02 Compaq Computer Corporation Multilevel inclusion in multilevel cache hierarchies
IE860318L (en) * 1990-10-01 1986-08-05 Digital Equipment Corp System bus for a multi-cache data processing system
US5265232A (en) * 1991-04-03 1993-11-23 International Business Machines Corporation Coherence control by data invalidation in selected processor caches without broadcasting to processor caches not having the data
US5293603A (en) * 1991-06-04 1994-03-08 Intel Corporation Cache subsystem for microprocessor based computer system with synchronous and asynchronous data path
DE69227956T2 (de) * 1991-07-18 1999-06-10 Tandem Computers Inc., Cupertino, Calif. Multiprozessorsystem mit gespiegeltem Speicher
US5369748A (en) * 1991-08-23 1994-11-29 Nexgen Microsystems Bus arbitration in a dual-bus architecture where one bus has relatively high latency
US5269005A (en) * 1991-09-17 1993-12-07 Ncr Corporation Method and apparatus for transferring data within a computer system
US5359715A (en) * 1991-09-16 1994-10-25 Ncr Corporation Architectures for computer systems having multiple processors, multiple system buses and multiple I/O buses interfaced via multiple ported interfaces
US5265211A (en) * 1992-01-02 1993-11-23 International Business Machines Corporation Arbitration control logic for computer system having dual bus architecture
US5319766A (en) * 1992-04-24 1994-06-07 Digital Equipment Corporation Duplicate tag store for a processor having primary and backup cache memories in a multiprocessor computer system
US5553258A (en) * 1992-04-24 1996-09-03 Digital Equipment Corporation Method and apparatus for forming an exchange address for a system with different size caches
US5398325A (en) * 1992-05-07 1995-03-14 Sun Microsystems, Inc. Methods and apparatus for improving cache consistency using a single copy of a cache tag memory in multiple processor computer systems
US5495585A (en) * 1992-10-16 1996-02-27 Unisys Corporation Programmable timing logic system for dual bus interface
US5404462A (en) * 1992-10-16 1995-04-04 Unisys Corporation Dual bus interface transfer system for central processing module
US5442754A (en) * 1992-12-04 1995-08-15 Unisys Corporation Receiving control logic system for dual bus network
US5386517A (en) * 1993-01-26 1995-01-31 Unisys Corporation Dual bus communication system connecting multiple processors to multiple I/O subsystems having a plurality of I/O devices with varying transfer speeds
US5553263A (en) * 1993-07-16 1996-09-03 Unisys Corporation Cache memory system with fault tolerance having concurrently operational cache controllers processing disjoint groups of memory
US5857084A (en) 1993-11-02 1999-01-05 Klein; Dean A. Hierarchical bus structure access system
US5623628A (en) * 1994-03-02 1997-04-22 Intel Corporation Computer system and method for maintaining memory consistency in a pipelined, non-blocking caching bus request queue
EP0735487B1 (en) * 1995-03-31 2001-10-31 Sun Microsystems, Inc. A fast, dual ported cache controller for data processors in a packet switched cache coherent multiprocessor system
US5684977A (en) * 1995-03-31 1997-11-04 Sun Microsystems, Inc. Writeback cancellation processing system for use in a packet switched cache coherent multiprocessor system
US5802278A (en) 1995-05-10 1998-09-01 3Com Corporation Bridge/router architecture for high performance scalable networking
US5740400A (en) * 1995-06-05 1998-04-14 Advanced Micro Devices Inc. Reducing cache snooping overhead in a multilevel cache system with multiple bus masters and a shared level two cache by using an inclusion field
US5673400A (en) 1995-06-06 1997-09-30 National Semiconductor Corporation Method and apparatus for identifying and controlling a target peripheral device in a multiple bus system
US5822755A (en) * 1996-01-25 1998-10-13 International Business Machines Corporation Dual usage memory selectively behaving as a victim cache for L1 cache or as a tag array for L2 cache
US5829033A (en) * 1996-07-01 1998-10-27 Sun Microsystems, Inc. Optimizing responses in a coherent distributed electronic system including a computer system
US5900011A (en) * 1996-07-01 1999-05-04 Sun Microsystems, Inc. Integrated processor/memory device with victim data cache

Also Published As

Publication number Publication date
CA2264518C (en) 2006-01-10
EP1021768A4 (en) 2002-08-14
US6622214B1 (en) 2003-09-16
JP4316016B2 (ja) 2009-08-19
JP2001503889A (ja) 2001-03-21
CA2264518A1 (en) 1998-03-19
WO1998011488A1 (en) 1998-03-19
KR100491435B1 (ko) 2005-05-24
CN1130644C (zh) 2003-12-10
CN1238050A (zh) 1999-12-08
EP1021768A1 (en) 2000-07-26
AU4345197A (en) 1998-04-02
KR20000036144A (ko) 2000-06-26
US5897656A (en) 1999-04-27

Similar Documents

Publication Publication Date Title
RU2221271C2 (ru) Система и способ обеспечения когерентности памяти в многошинной компьютерной системе
RU99107385A (ru) Система и способ обеспечения когерентности памяти в многошинной компьютерной системе
US4410944A (en) Apparatus and method for maintaining cache memory integrity in a shared memory environment
CN100424657C (zh) 转换后备缓冲器的惰性转储清除
US4282572A (en) Multiprocessor memory access system
US20030149844A1 (en) Block data mover adapted to contain faults in a partitioned multiprocessor system
GB1531926A (en) Hierarchical data storage systems
US20070150665A1 (en) Propagating data using mirrored lock caches
KR960024987A (ko) 축소된 요구 블로킹을 갖는 캐시메모리
WO2002013014A3 (en) System and method for implementing a redundant data storage architecture
JPH03118649A (ja) メモリーサブシステム入力キュー
KR850001572A (ko) 컴퓨터 계층 제어용 데이터 처리 시스템
JP2008225906A (ja) 情報処理システム及びその情報処理システムを構成するコア識別コントローラ
CA1322421C (en) Storage control system in a computer system
US5008817A (en) Method and apparatus for transferring addresses and information in a buffer memory and a common main storage device
US6397305B1 (en) Method and apparatus for controlling shared memory access
US6931510B1 (en) Method and system for translation lookaside buffer coherence in multiprocessor systems
JP3453761B2 (ja) アドレス変換方式
JPS5848289A (ja) バツフアメモリ制御方式
JP2587586B2 (ja) データ転送方法
JP6365718B1 (ja) コンピュータシステム、及びメモリコピー方法
US6397297B1 (en) Dual cache with multiple interconnection operation modes
JPS6329297B2 (ru)
US5813046A (en) Virtually indexable cache memory supporting synonyms
JP3256558B2 (ja) 電子計算機におけるアドレス変換方式

Legal Events

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

Effective date: 20090917