RU2017118316A - Способ обработки запроса на запись, процессор и компьютер - Google Patents

Способ обработки запроса на запись, процессор и компьютер Download PDF

Info

Publication number
RU2017118316A
RU2017118316A RU2017118316A RU2017118316A RU2017118316A RU 2017118316 A RU2017118316 A RU 2017118316A RU 2017118316 A RU2017118316 A RU 2017118316A RU 2017118316 A RU2017118316 A RU 2017118316A RU 2017118316 A RU2017118316 A RU 2017118316A
Authority
RU
Russia
Prior art keywords
processor
mirror
packet
target data
address
Prior art date
Application number
RU2017118316A
Other languages
English (en)
Other versions
RU2017118316A3 (ru
Inventor
Вэй ЧЖЭН
Юй ЧЖАН
Чуньбао ЯНЬ
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 RU2017118316A publication Critical patent/RU2017118316A/ru
Publication of RU2017118316A3 publication Critical patent/RU2017118316A3/ru

Links

Classifications

    • 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/0804Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with main memory updating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2056Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
    • G06F11/2071Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring using a plurality of controllers
    • G06F11/2076Synchronous techniques
    • 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/0866Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
    • G06F12/0868Data transfer between cache memory and other subsystems, e.g. storage devices or host systems
    • 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/10Address translation
    • G06F12/1027Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]
    • G06F12/1045Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB] associated with a data cache
    • 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/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4022Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
    • 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/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/065Replication mechanisms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/31Providing disk cache in a specific location of a storage system
    • G06F2212/314In storage network, e.g. network attached cache
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0026PCI express

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Mathematical Physics (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Computer Security & Cryptography (AREA)
  • Bus Control (AREA)
  • Hardware Redundancy (AREA)
  • Information Transfer Systems (AREA)

Claims (79)

1. Способ обработки запроса на запись, применяемый к первому компьютеру, причем первый компьютер соединен со вторым компьютером, соответствующие операционные системы выполняются на первом компьютере и втором компьютере соответственно, первый компьютер содержит первый процессор, второй компьютер содержит второй процессор, и первый процессор, и второй процессор содержат интерфейс системной шины, интерфейс системной шины первого процессора соединен с интерфейсом системной шины второго процессора с помощью системной шины, при этом второе адресное пространство памяти второго компьютера является зеркальным адресным пространством первого адресного пространства памяти первого компьютера; при этом
способ содержит:
прием первым процессором запроса на запись, причем запрос на запись содержит записываемые целевые данные и адрес записи целевых данных (310);
определение первым процессором того, что адрес записи расположен в первом адресном пространстве памяти (320); и
запись первым процессором целевых данных в запросе на запись в первое адресное пространство памяти, и отправку целевых данных в запросе на запись во второй процессор с помощью системной шины таким образом, что второй процессор записывает целевые данные во второе адресное пространство памяти (330).
2. Способ по п. 1, в котором отправка первым процессором целевых данных в запросе на запись во второй процессор с помощью системной шины содержит:
формирование первым процессором зеркального пакета в соответствии с запросом на запись, причем зеркальный пакет содержит целевые данные и адрес записи;
отправку первым процессором зеркального пакета в непрозрачный мост первого процессора;
преобразование непрозрачным мостом первого процессора адреса записи в зеркальном пакете в зеркальный адрес адреса записи во втором адресном пространстве памяти в соответствии с зеркальным отношением между первым адресным пространством памяти и вторым адресным пространством памяти для получения обновленного зеркального пакета; и
отправку непрозрачным мостом первого процессора обновленного зеркального пакета в непрозрачный мост второго процессора с помощью системной шины таким образом, что второй процессор записывает целевые данные в зеркальный адрес в соответствии с обновленным зеркальным пакетом, принимаемым непрозрачным мостом второго процессора.
3. Способ по п. 2, в котором способ дополнительно содержит:
отправку непрозрачным мостом первого процессора зеркального пакета завершения в первый процессор после того, как непрозрачный мост первого процессора принимает зеркальный пакет завершения от второго процессора в течение заранее установленного времени, причем зеркальный пакет завершения соответствует зеркальному пакету и используется для индикации того, что целевые данные записаны в зеркальный адрес; и
подтверждение первым процессором успеха операции зеркалирования для целевых данных в соответствии с зеркальным пакетом завершения зеркальной транзакции, соответствующей операции зеркалирования.
4. Способ по п. 3, в котором способ дополнительно содержит:
отправку непрозрачным мостом первого процессора зеркального пакета времени ожидания в первый процессор, когда непрозрачный мост первого процессора не принимает зеркальный пакет завершения от второго процессора в течение заранее установленного времени; и
подтверждение первым процессором неудачи операции зеркалирования в соответствии с зеркальным пакетом времени ожидания, и прерывание зеркальной транзакции.
5. Способ по п. 1, в котором отправка первым процессором целевых данных в запросе на запись во второй процессор с помощью системной шины содержит:
формирование первым процессором зеркального пакета в соответствии с запросом на запись, причем зеркальный пакет содержит целевые данные и адрес записи; и
отправку первым процессором зеркального пакета в непрозрачный мост первого процессора, причем непрозрачный мост первого процессора отправляет зеркальный пакет в непрозрачный мост второго процессора с помощью системной шины таким образом, что непрозрачный мост второго процессора преобразует адрес записи в зеркальном пакете в зеркальный адрес адреса записи во втором адресном пространстве памяти для получения обновленного зеркального пакета, при этом второй процессор записывает целевые данные в зеркальный адрес в соответствии с обновленным зеркальным пакетом.
6. Способ по любому из пп. 1-5, в котором запись первым процессором целевых данных в запросе на запись в первое адресное пространство памяти содержит:
формирование первым процессором пакета записи для целевых данных в соответствии с запросом на запись; и
запись первым процессором целевых данных в адрес записи в первом адресном пространстве памяти в соответствии с пакетом записи.
7. Способ по любому из пп. 1-5, в котором системная шина является шиной quick path interconnect QPI или шиной HyperTransport HT.
8. Способ обработки запроса на запись, причем способ применяется ко второму компьютеру, соединенному с первым компьютером, соответствующие операционные системы выполняются на первом компьютере и втором компьютере соответственно, первый компьютер содержит первый процессор, второй компьютер содержит второй процессор, и первый процессор, и второй процессор содержат интерфейс системной шины, при этом интерфейс системной шины первого процессора соединен с интерфейсом системной шины второго процессора с помощью системной шины, при этом второе адресное пространство памяти второго компьютера представляет собой зеркальное адресное пространство первого адресного пространства памяти первого компьютера; при этом
способ содержит:
прием вторым процессором целевых данных от первого процессора с помощью системной шины, причем целевые данные представляют собой данные, записываемые в память первого процессора, при этом адрес записи целевых данных расположен в первом адресном пространстве памяти; и
запись вторым процессором целевых данных во второе адресное пространство памяти.
9. Способ по п. 8, в котором прием вторым процессором целевых данных от первого процессора с помощью системной шины содержит:
прием непрозрачным мостом второго процессора зеркального пакета от первого процессора с помощью системной шины, причем зеркальный пакет содержит целевые данные и зеркальный адрес адреса записи во втором адресном пространстве памяти; при этом
запись вторым процессором целевых данных во второе адресное пространство памяти содержит:
преобразование непрозрачным мостом второго процессора зеркального пакета в пакет записи для целевых данных; и
запись непрозрачным мостом второго процессора пакета записи в зеркальный адрес во втором адресном пространстве памяти с помощью контроллера памяти второго компьютера.
10. Способ по п. 9, в котором способ дополнительно содержит:
прием непрозрачным мостом второго процессора от контроллера памяти пакета завершения записи, соответствующего пакету записи, причем пакет завершения записи содержит зеркальный адрес;
преобразование непрозрачным мостом второго процессора зеркального адреса в адрес записи в соответствии с отношением отображения между первым адресным пространством памяти и вторым адресным пространством памяти; и
отправку непрозрачным мостом второго процессора зеркального пакета завершения, соответствующего зеркальному пакету первого процессора, причем зеркальный пакет завершения содержит адрес записи, при этом зеркальный пакет завершения используется для индикации того, что целевые данные записаны в зеркальный адрес.
11. Способ по п. 8, в котором прием вторым процессором целевых данных от первого процессора с помощью системной шины содержит:
прием непрозрачным мостом второго процессора зеркального пакета от первого процессора с помощью системной шины, причем зеркальный пакет содержит целевые данные и адрес записи; при этом
запись вторым процессором целевых данных во второе адресное пространство памяти содержит:
преобразования непрозрачным мостом второго процессора зеркального пакета в пакет записи для целевых данных и преобразование адреса записи в зеркальный адрес адреса записи во втором адресном пространстве памяти; и
запись непрозрачным мостом второго процессора пакета записи в зеркальный адрес во втором адресном пространстве памяти с помощью контроллера памяти второго компьютера.
12. Способ по любому из пп. 8-11, в котором системная шина является шиной quick path interconnect QPI или шиной HyperTransport HT.
13. Процессор, причем процессор расположен в первом компьютере, первый компьютер соединен со вторым компьютером, соответствующие операционные системы выполняются на первом компьютере и втором компьютере соответственно, второй компьютер содержит другой процессор, и процессор, и другой процессор содержат интерфейс системной шины, интерфейс системной шины процессора соединен с интерфейсом системной шины другого процессора с помощью системной шины, второе адресное пространство памяти второго компьютера является зеркальным адресным пространством первого адресного пространства памяти первого компьютера, процессор дополнительно содержит контроллер и внутреннюю шину, а контроллер соединен с интерфейсом системной шины процессора с помощью внутренней шины; при этом
контроллер выполнен с возможностью приема запроса на запись, причем запрос на запись содержит записываемые целевые данные и адрес записи целевых данных; определения того, что адрес записи расположен в первом адресном пространстве памяти; и записи целевых данных в запросе на запись в первое адресное пространство памяти, а также отправки целевых данных в запросе на запись в другой процессор с помощью системной шины таким образом, что другой процессор записывает целевые данные во второе адресное пространство памяти.
14. Процессор по п. 13, в котором процессор дополнительно содержит непрозрачный мост, причем непрозрачный мост соединен с интерфейсом системной шины, при этом непрозрачный мост соединен с контроллером с помощью внутренней шины;
контроллер, в частности, выполнен с возможностью формирования зеркального пакета в соответствии с запросом на запись, причем зеркальный пакет содержит целевые данные и адрес записи; и
непрозрачный мост выполнен с возможностью преобразования адреса записи в зеркальном пакете в зеркальный адрес адреса записи во втором адресном пространстве памяти в соответствии с зеркальным отношением между первым адресным пространством памяти и вторым адресным пространством памяти для получения обновленного зеркального пакета; и отправки обновленного зеркального пакета в непрозрачный мост другого процессора с помощью системной шины таким образом, что другой процессор записывает целевые данные в зеркальный адрес в соответствии с обновленным зеркальным пакетом, принимаемым непрозрачным мостом другого процессора.
15. Процессор по п. 14, в котором непрозрачный мост дополнительно выполнен с возможностью отправки зеркального пакета завершения в контроллер после приема зеркального пакета завершения от другого процессора в течение заранее установленного времени, причем зеркальный пакет завершения соответствует зеркальному пакету и используется для индикации того, что целевые данные записаны в зеркальный адрес; при этом
контроллер дополнительно выполнен с возможностью подтверждения успеха операции зеркалирования для целевых данных в соответствии с зеркальным пакетом завершения и прерывания зеркальной транзакции, соответствующей операции зеркалирования.
16. Процессор по п. 15, в котором непрозрачный мост дополнительно выполнен с возможностью отправки зеркального пакета времени ожидания в контроллер, когда зеркальный пакет завершения не принят от другого процессора в течение заранее установленного времени; при этом
контроллер дополнительно выполнен с возможностью подтверждения неудачи операции зеркалирования в соответствии с зеркальным пакетом времени ожидания и прерывания зеркальной транзакции.
17. Процессор по п. 13, в котором контроллер, в частности, выполнен с возможностью формирования зеркального пакета в соответствии с запросом на запись, причем зеркальный пакет содержит целевые данные и адрес записи; и отправки зеркального пакета в непрозрачный мост процессора, причем непрозрачный мост процессора отправляет зеркальный пакет в непрозрачный мост другого процессора с помощью системной шины таким образом, что непрозрачный мост другого процессора преобразует адрес записи в зеркальном пакете в зеркальный адрес адреса записи во втором адресном пространстве памяти для получения обновленного зеркального пакета, при этом другой процессор записывает целевые данные в зеркальный адрес в соответствии с обновленным зеркальным пакетом.
18. Процессор по любому из пп. 13-17, в котором контроллер, в частности, выполнен с возможностью формирования пакета записи для целевых данных в соответствии с запросом на запись; и записи целевых данных в адрес записи в первом адресном пространстве памяти в соответствии с пакетом записи.
19. Процессор по любому из пп. 13-17, в котором системная шина является шиной quick path interconnect QPI или шиной HyperTransport HT.
20. Процессор, причем процессор расположен во втором компьютере, соединенном с первым компьютером, соответствующие операционные системы выполняются на первом компьютере и втором компьютере соответственно, первый компьютер содержит другой процессор, и другой процессор, и процессор содержат интерфейс системной шины, интерфейс системной шины другого процессора соединен с интерфейсом системной шины процессора с помощью системной шины, второе адресное пространство памяти второго компьютера представляет собой зеркальное адресное пространство первого адресного пространства памяти первого компьютера, процессор содержит контроллер, непрозрачный мост и внутреннюю шину, непрозрачный мост соединен с интерфейсом системной шины процессора, при этом контроллер соединен с непрозрачным мостом с помощью внутренней шины; при этом
непрозрачный мост выполнен с возможностью приема целевых данных от другого процессора с помощью системной шины, причем целевые данные представляют собой данные, записываемые в память другого процессора, при этом адрес записи целевых данных расположен в первом адресном пространстве памяти; и записи целевых данных во второе адресное пространство памяти.
21. Процессор по п. 20, в котором непрозрачный мост, в частности, выполнен с возможностью приема зеркального пакета от другого процессора с помощью системной шины, причем зеркальный пакет содержит целевые данные и зеркальный адрес адреса записи во втором адресном пространстве памяти; преобразования зеркального пакета в пакет записи для целевых данных; и записи пакета записи в зеркальный адрес во втором адресном пространстве памяти с помощью контроллера памяти второго компьютера.
22. Процессор по п. 21, в котором непрозрачный мост дополнительно выполнен с возможностью приема от контроллера памяти пакета завершения записи, соответствующего пакету записи, причем пакет завершения записи содержит зеркальный адрес; преобразования зеркального адреса в адрес записи в соответствии с отношением отображения между первым адресным пространством памяти и вторым адресным пространством памяти; и отправки в другой процессор зеркального пакета завершения, причем зеркальный пакет завершения содержит адрес записи, при этом зеркальный пакет завершения используется для индикации того, что целевые данные записаны в зеркальный адрес.
23. Процессор по п. 20, в котором непрозрачный мост, в частности, выполнен с возможностью приема зеркального пакета от другого процессора с помощью системной шины, причем зеркальный пакет содержит целевые данные и адрес записи; преобразования зеркального пакета в пакет записи для целевых данных и преобразования адреса записи в зеркальный адрес адреса записи во втором адресном пространстве памяти; и записи пакета записи в зеркальный адрес во втором адресном пространстве памяти с помощью контроллера памяти второго компьютера.
24. Процессор по любому из пп. 20-22, в котором системная шина является шиной quick path interconnect QPI или шиной HyperTransport HT.
25. Компьютер, причем компьютер соединен с другим компьютером, соответствующие операционные системы выполняются на компьютере и другом компьютере соответственно, компьютер содержит первый процессор, другой компьютер содержит второй процессор, и первый процессор, и второй процессор содержат интерфейс системной шины, при этом интерфейс системной шины первого процессора соединен с интерфейсом системной шины второго процессора с помощью системной шины, при этом второе адресное пространство памяти другого компьютера является зеркальным адресным пространством первого адресного пространства памяти компьютера; при этом
компьютер содержит:
модуль приема, выполненный с возможностью приема запроса на запись, причем запрос на запись содержит записываемые целевые данные и адрес записи целевых данных;
модуль определения, выполненный с возможностью определения того, что адрес записи расположен в первом адресном пространстве памяти; и
модуль зеркалирования, выполненный с возможностью записи целевых данных в запросе на запись в первое адресное пространство памяти и отправки целевых данных в запросе на запись во второй процессор с помощью системной шины таким образом, что второй процессор записывает целевые данные во второе адресное пространство памяти.
26. Компьютер по п. 25, в котором модуль зеркалирования, в частности, выполнен с возможностью формирования зеркального пакета в соответствии с запросом на запись, причем зеркальный пакет содержит целевые данные и адрес записи; отправки зеркального пакета в непрозрачный мост первого процессора; преобразования адреса записи в зеркальном пакете в зеркальный адрес адреса записи во втором адресном пространстве памяти в соответствии с зеркальным отношением между первым адресным пространством памяти и вторым адресным пространством памяти для получения обновленного зеркального пакета; и отправки обновленного зеркального пакета в непрозрачный мост второго процессора с помощью системной шины таким образом, что второй процессор записывает целевые данные в зеркальный адрес в соответствии с обновленным зеркальным пакетом, принимаемым непрозрачным мостом второго процессора.
27. Компьютер по п. 26, в котором модуль зеркалирования дополнительно выполнен с возможностью: отправки зеркального пакета завершения в первый процессор после того, как непрозрачный мост первого процессора принимает зеркальный пакет завершения от второго процессора в течение заранее установленного времени, причем зеркальный пакет завершения соответствует зеркальному пакету и используется для индикации того, что целевые данные записаны в зеркальный адрес; и подтверждения успеха операции зеркалирования для целевых данных в соответствии с зеркальным пакетом завершения и прерывания зеркальной транзакции, соответствующей операции зеркалирования.
28. Компьютер по п. 27, в котором модуль зеркалирования дополнительно выполнен с возможностью: отправки зеркального пакета времени ожидания в первый процессор, когда непрозрачный мост первого процессора не принимает зеркальный пакет завершения от второго процессора в течение заранее установленного времени; и подтверждения неудачи операции зеркалирования в соответствии с зеркальным пакетом времени ожидания и прерывания зеркальной транзакции.
29. Компьютер по п. 25, в котором модуль зеркалирования дополнительно выполнен с возможностью формирования зеркального пакета в соответствии с запросом на запись, причем зеркальный пакет содержит целевые данные и адрес записи; и отправки зеркального пакета в непрозрачный мост первого процессора, причем непрозрачный мост первого процессора отправляет зеркальный пакет в непрозрачный мост второго процессора с помощью системной шины таким образом, что непрозрачный мост второго процессора преобразует адрес записи в зеркальном пакете в зеркальный адрес адреса записи во втором адресном пространстве памяти для получения обновленного зеркального пакета, при этом второй процессор записывает целевые данные в зеркальный адрес в соответствии с обновленным зеркальным пакетом.
30. Компьютер по любому из пп. 25-29, в котором модуль зеркалирования дополнительно выполнен с возможностью формирования пакета записи для целевых данных в соответствии с запросом на запись; и записи целевых данных в адрес записи в первом адресном пространстве памяти в соответствии с пакетом записи.
31. Компьютер по любому из пп. 25-29, в котором системная шина является шиной quick path interconnect QPI или шиной HyperTransport HT.
32. Компьютер, причем компьютер соединен с другим компьютером, соответствующие операционные системы выполняются на другом компьютере и компьютере соответственно, другой компьютер содержит первый процессор, компьютер содержит второй процессор, и первый процессор, и второй процессор содержат интерфейс системной шины, при этом интерфейс системной шины первого процессора соединен с интерфейсом системной шины второго процессора с помощью системной шины, при этом второе адресное пространство памяти компьютера представляет собой зеркальное адресное пространство первого адресного пространства памяти другого компьютера; при этом
компьютер содержит:
модуль зеркалирования, выполненный с возможностью приема целевых данных от первого процессора с помощью системной шины, причем целевые данные представляют собой данные, записываемые в память первого процессора, при этом адрес записи целевых данных расположен в первом адресном пространстве памяти; и
модуль операции записи, выполненный с возможностью записи целевых данных во второе адресное пространство памяти.
33. Компьютер по п. 32, в котором модуль зеркалирования, в частности, выполнен с возможностью приема зеркального пакета от первого процессора с помощью системной шины, причем зеркальный пакет содержит целевые данные и зеркальный адрес адреса записи во втором адресном пространстве памяти; при этом модуль операции записи, в частности, выполнен с возможностью преобразования зеркального пакета в пакет записи для целевых данных и записи пакета записи в зеркальный адрес во втором адресном пространстве памяти с помощью контроллера памяти компьютера.
34. Компьютер по п. 33, в котором модуль зеркалирования дополнительно выполнен с возможностью приема от контроллера памяти пакета завершения записи, соответствующего пакету записи, причем пакет завершения записи содержит зеркальный адрес; преобразования зеркального адреса в адрес записи в соответствии с отношением отображения между первым адресным пространством памяти и вторым адресным пространством памяти; и отправки в первый процессор зеркального пакета завершения, соответствующего зеркальному пакету, причем зеркальный пакет завершения содержит адрес записи, при этом зеркальный пакет завершения используется для индикации того, что целевые данные записаны в зеркальный адрес.
35. Компьютер по п. 32, в котором модуль зеркалирования, в частности, выполнен с возможностью приема зеркального пакета от первого процессора с помощью системной шины, причем зеркальный пакет содержит целевые данные и адрес записи; при этом модуль операции записи, в частности, выполнен с возможностью преобразования зеркального пакета в пакет записи для целевых данных и преобразования адреса записи в зеркальный адрес адреса записи во втором адресном пространстве памяти; и записи пакета записи в зеркальный адрес во втором адресном пространстве памяти с помощью контроллера памяти компьютера.
36. Компьютер по любому из пп. 32-35, в котором системная шина является шиной quick path interconnect QPI или шиной HyperTransport HT.
RU2017118316A 2015-12-17 2015-12-17 Способ обработки запроса на запись, процессор и компьютер RU2017118316A (ru)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2015/097742 WO2017101080A1 (zh) 2015-12-17 2015-12-17 处理写请求的方法、处理器和计算机

Publications (2)

Publication Number Publication Date
RU2017118316A true RU2017118316A (ru) 2018-11-26
RU2017118316A3 RU2017118316A3 (ru) 2018-11-26

Family

ID=59055462

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2017118316A RU2017118316A (ru) 2015-12-17 2015-12-17 Способ обработки запроса на запись, процессор и компьютер

Country Status (11)

Country Link
US (1) US20170220255A1 (ru)
EP (1) EP3211535A4 (ru)
JP (1) JP2018503156A (ru)
KR (1) KR20170086484A (ru)
CN (1) CN107209725A (ru)
AU (1) AU2015411096A1 (ru)
BR (1) BR112017008674A2 (ru)
CA (1) CA2963915A1 (ru)
RU (1) RU2017118316A (ru)
SG (1) SG11201702806UA (ru)
WO (1) WO2017101080A1 (ru)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109491587B (zh) * 2017-09-11 2021-03-23 华为技术有限公司 数据访问的方法及装置
CN109462497B (zh) * 2018-10-22 2022-07-29 杭州迪普科技股份有限公司 传输管理数据的方法、装置、设备及存储介质
CN111813707B (zh) * 2020-07-17 2023-12-22 济南浪潮数据技术有限公司 一种数据同步方法、装置、设备及存储介质
CN112835519B (zh) * 2021-01-29 2023-03-14 杭州海康威视数字技术股份有限公司 一种数据读取方法、装置、电子设备及存储介质
CN114095584A (zh) * 2021-11-29 2022-02-25 重庆忽米网络科技有限公司 工业设备数据的模型转换与构建方法及可读存储介质
CN115543636B (zh) * 2022-11-29 2023-03-21 苏州浪潮智能科技有限公司 一种多控制器的数据备份方法及相关装置

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5765196A (en) * 1996-02-27 1998-06-09 Sun Microsystems, Inc. System and method for servicing copyback requests in a multiprocessor system with a shared memory
US6944719B2 (en) * 2002-05-15 2005-09-13 Broadcom Corp. Scalable cache coherent distributed shared memory processing system
US20060212644A1 (en) * 2005-03-21 2006-09-21 Acton John D Non-volatile backup for data cache
US8839268B2 (en) * 2008-02-07 2014-09-16 Oracle America, Inc. Method and system of preventing silent data corruption
US9032101B1 (en) * 2008-12-10 2015-05-12 Nvidia Corporation Chipset support for binding and migrating hardware devices among heterogeneous processing units
US8375184B2 (en) * 2009-11-30 2013-02-12 Intel Corporation Mirroring data between redundant storage controllers of a storage system
US20110238909A1 (en) * 2010-03-29 2011-09-29 Pankaj Kumar Multicasting Write Requests To Multiple Storage Controllers
US8751714B2 (en) * 2010-09-24 2014-06-10 Intel Corporation Implementing quickpath interconnect protocol over a PCIe interface
WO2012158819A1 (en) * 2011-05-16 2012-11-22 Oracle International Corporation System and method for providing a messaging application program interface
JP5833756B2 (ja) * 2012-03-23 2015-12-16 株式会社日立製作所 二重化共有メモリアクセス方法と二重化共有メモリアクセス方法を用いたストレージ装置
US8898397B2 (en) * 2012-04-11 2014-11-25 Moon J. Kim Memory and process sharing across multiple chipsets via input/output with virtualization
JP5930046B2 (ja) * 2012-08-17 2016-06-08 富士通株式会社 情報処理装置、及び情報処理装置の制御方法
CN104092646B (zh) * 2013-10-28 2016-10-12 腾讯科技(深圳)有限公司 操作同步方法和装置
CN104572508A (zh) * 2015-01-22 2015-04-29 山东超越数控电子有限公司 一种基于PCIE非透明桥的cache镜像方法

Also Published As

Publication number Publication date
WO2017101080A1 (zh) 2017-06-22
AU2015411096A1 (en) 2017-07-06
JP2018503156A (ja) 2018-02-01
EP3211535A1 (en) 2017-08-30
SG11201702806UA (en) 2017-07-28
US20170220255A1 (en) 2017-08-03
CA2963915A1 (en) 2017-06-17
CN107209725A (zh) 2017-09-26
RU2017118316A3 (ru) 2018-11-26
BR112017008674A2 (pt) 2018-06-19
KR20170086484A (ko) 2017-07-26
EP3211535A4 (en) 2017-11-22

Similar Documents

Publication Publication Date Title
RU2017118316A (ru) Способ обработки запроса на запись, процессор и компьютер
KR101455016B1 (ko) 고가용성 솔리드 스테이트 드라이브를 제공하는 방법 및 장치
US9841902B2 (en) Peripheral component interconnect express controllers configured with non-volatile memory express interfaces
US20200363977A1 (en) Data Migration Method, Host, and Solid State Disk
US9003091B2 (en) Flow control for a Serial Peripheral Interface bus
JP2018517205A (ja) 拡張メモリにアクセスするための方法、デバイス及びシステム
TW201506944A (zh) 用於包括或介接非順應記憶體技術之記憶體模組的響應控制技術
US9400603B2 (en) Implementing enhanced performance flash memory devices
US10540303B2 (en) Module based data transfer
US10235253B1 (en) Asymmetric memory transceiver
US9305618B2 (en) Implementing simultaneous read and write operations utilizing dual port DRAM
US20160011965A1 (en) Pass through storage devices
US20180173435A1 (en) Method and apparatus for caching data
US20150106658A1 (en) Information processing apparatus and failure detection method of information processing apparatus
JP2016511901A (ja) データ保護方法、装置及び設備
US9158459B2 (en) Managing a storage device using a hybrid controller
US10310740B2 (en) Aligning memory access operations to a geometry of a storage device
US20160004592A1 (en) Method for detecting error of data, storage device, and recording medium
WO2017185375A1 (zh) 一种数据访问的方法及内存控制器
US20160034405A1 (en) Heterogeneous memory system and data communication method in the same
US20170206178A1 (en) Information processing apparatus, method of transferring data, and non-transitory computer-readable recording medium
US9348744B2 (en) Implementing enhanced reliability of systems utilizing dual port DRAM
US20160378351A1 (en) Exposing a geometry of a storage device
CN102323913A (zh) 固态硬盘的数据读出方法及系统
KR102438319B1 (ko) 공통 메모리 인터페이스 장치 및 방법