JP2018503156A - 書込み要求処理方法、プロセッサおよびコンピュータ - Google Patents
書込み要求処理方法、プロセッサおよびコンピュータ Download PDFInfo
- Publication number
- JP2018503156A JP2018503156A JP2017525338A JP2017525338A JP2018503156A JP 2018503156 A JP2018503156 A JP 2018503156A JP 2017525338 A JP2017525338 A JP 2017525338A JP 2017525338 A JP2017525338 A JP 2017525338A JP 2018503156 A JP2018503156 A JP 2018503156A
- Authority
- JP
- Japan
- Prior art keywords
- processor
- mirror
- packet
- write
- computer
- Prior art date
- Legal status (The legal status 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 status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/10—Address translation
- G06F12/1027—Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]
- G06F12/1045—Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB] associated with a data cache
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0804—Addressing 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error 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/2053—Error 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/2056—Error 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/2071—Error 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/2076—Synchronous techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0866—Addressing 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/0868—Data transfer between cache memory and other subsystems, e.g. storage devices or host systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4004—Coupling between buses
- G06F13/4022—Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
- G06F3/0619—Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/065—Replication mechanisms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/0815—Cache consistency protocols
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/31—Providing disk cache in a specific location of a storage system
- G06F2212/314—In storage network, e.g. network attached cache
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0026—PCI 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)
Abstract
Description
書込み要求を受信するように構成される受信モジュール1010であって、ここで、書込み要求は、書き込まれるべきターゲットデータおよびターゲットデータの書込みアドレスを含む、受信モジュール1010と、
書込みアドレスが第1のメモリアドレス空間内に配置されていると決定するように構成される決定モジュール1020と、
書込み要求内のターゲットデータを、第1のメモリアドレス空間内に書き込み、且つ、書込み要求内のターゲットデータを、システムバスを使用することによって、第2のプロセッサに送信するように構成され、その結果、第2のプロセッサは、ターゲットデータを、第2のメモリアドレス空間内に書き込む、ミラーリングモジュール1030とを含む。
システムバスを使用することによって、第1のプロセッサからターゲットデータを受信するように構成されるミラーリングモジュール1110であって、ここで、ターゲットデータは、第1のプロセッサのメモリ内に書き込まれるべきデータであり、且つ、ターゲットデータの書込みアドレスは、第1のメモリアドレス空間内に配置される、ミラーリングモジュール1110と、
ターゲットデータを、第2のメモリアドレス空間内に書き込むように構成される書込み操作モジュール1120とを含む。
810 システムバスインタフェース
820 コントローラ
830 内部バス
840 非透過ブリッジ
900 プロセッサ
910 システムバスインタフェース
920 コントローラ
930 内部バス
940 非透過ブリッジ
1000 コンピュータ
1010 受信モジュール
1020 決定モジュール
1030 ミラーモジュール
1100 コンピュータ
1110 ミラーモジュール
1120 書込み操作モジュール
Claims (36)
- 第1のコンピュータに適用される書込み要求処理方法であって、前記第1のコンピュータは第2のコンピュータに接続され、それぞれのオペレーティングシステムは、前記第1のコンピュータおよび前記第2のコンピュータ上でそれぞれ動作し、前記第1のコンピュータは第1のプロセッサを含み、前記第2のコンピュータは第2のプロセッサを含み、前記第1のプロセッサと前記第2のプロセッサの両方はシステムバスインタフェースを含み、前記第1のプロセッサの前記システムバスインタフェースは、システムバスを使用することによって、前記第2のプロセッサの前記システムバスインタフェースに接続され、前記第2のコンピュータの第2のメモリアドレス空間は、前記第1のコンピュータの第1のメモリアドレス空間のミラーアドレス空間であり、且つ、
前記方法は、
前記第1のプロセッサによって、書込み要求を受信するステップであって、前記書込み要求は、書き込まれるべきターゲットデータおよび前記ターゲットデータの書込みアドレスを含む、ステップと、
前記第1のプロセッサによって、前記書込みアドレスが前記第1のメモリアドレス空間内に配置されていると決定するステップと、
前記第1のプロセッサによって、前記書込み要求内の前記ターゲットデータを、前記第1のメモリアドレス空間内に書き込み、且つ、前記書込み要求内の前記ターゲットデータを、前記システムバスを使用することによって、前記第2のプロセッサに送信し、その結果、前記第2のプロセッサは、前記第2のメモリアドレス空間内に、前記ターゲットデータを書き込む、ステップとを含む、方法。 - 前記第1のプロセッサによって、前記書込み要求内の前記ターゲットデータを、前記システムバスを使用することによって、前記第2のプロセッサに送信する前記ステップは、
前記第1のプロセッサによって、前記書込み要求に従って、ミラーパケットを生成するステップであって、前記ミラーパケットは、前記ターゲットデータおよび前記書込みアドレスを含む、ステップと、
前記第1のプロセッサによって、前記ミラーパケットを、前記第1のプロセッサの非透過ブリッジに送信するステップと、
前記第1のプロセッサの前記非透過ブリッジによって、前記第1のメモリアドレス空間と前記第2のメモリアドレス空間との間のミラー関係に従って、前記ミラーパケット内の前記書込みアドレスを、前記書込みアドレスの、前記第2のメモリアドレス空間内のミラーアドレスに変換して、更新されたミラーパケットを取得するステップと、
前記第1のプロセッサの前記非透過ブリッジによって、前記更新されたミラーパケットを、前記システムバスを使用することによって、前記第2のプロセッサの非透過ブリッジに送信し、その結果、前記第2のプロセッサは、前記第2のプロセッサの前記非透過ブリッジによって受信された、前記更新されたミラーパケットに従って、前記ターゲットデータを前記ミラーアドレス内に書き込む、ステップとを含む、請求項1に記載の方法。 - 前記方法は、
前記第1のプロセッサの前記非透過ブリッジが、事前に設定された時間内に、前記第2のプロセッサからミラー完了パケットを受信した後、前記第1のプロセッサの前記非透過ブリッジによって、前記ミラー完了パケットを前記第1のプロセッサに送信するステップであって、前記ミラー完了パケットは前記ミラーパケットに対応しているとともに、前記ターゲットデータが前記ミラーアドレス内に書き込まれたことを示すために使用される、ステップと、
前記第1のプロセッサによって、前記ミラー完了パケットに従って、前記ターゲットデータのためのミラーリング操作の成功を確認し、且つ、前記ミラーリング操作に対応するミラートランザクションを終了するステップとをさらに含む、請求項2に記載の方法。 - 前記方法は、
前記第1のプロセッサの前記非透過ブリッジが、前記事前に設定された時間内に、前記第2のプロセッサから前記ミラー完了パケットを受信しないとき、前記第1のプロセッサの前記非透過ブリッジによって、ミラータイムアウトパケットを前記第1のプロセッサに送信するステップと、
前記第1のプロセッサによって、前記ミラータイムアウトパケットに従って、前記ミラーリング操作の失敗を確認し、且つ、前記ミラートランザクションを終了するステップとをさらに含む、請求項3に記載の方法。 - 前記第1のプロセッサによって、前記書込み要求内の前記ターゲットデータを、前記システムバスを使用することによって、前記第2のプロセッサに送信する前記ステップは、
前記第1のプロセッサによって、前記書込み要求に従って、ミラーパケットを生成するステップであって、前記ミラーパケットは、前記ターゲットデータおよび前記書込みアドレスを含む、ステップと、
前記第1のプロセッサによって、前記ミラーパケットを、前記第1のプロセッサの非透過ブリッジに送信するステップであって、前記第1のプロセッサの前記非透過ブリッジは、前記ミラーパケットを、前記システムバスを使用することによって、前記第2のプロセッサの非透過ブリッジに送信し、その結果、前記第2のプロセッサの前記非透過ブリッジは、前記ミラーパケット内の前記書込みアドレスを、前記書込みアドレスの、前記第2のメモリアドレス空間内のミラーアドレスに変換して、更新されたミラーパケットを取得し、且つ、前記第2のプロセッサは、前記更新されたミラーパケットに従って、前記ターゲットデータを前記ミラーアドレス内に書き込む、ステップとを含む、請求項1に記載の方法。 - 前記第1のプロセッサによって、前記書込み要求内の前記ターゲットデータを、前記第1のメモリアドレス空間内に書き込む前記ステップは、
前記第1のプロセッサによって、前記書込み要求に従って、前記ターゲットデータのための書込みパケットを生成するステップと、
前記第1のプロセッサによって、前記書込みパケットに従って、前記ターゲットデータを、前記第1のメモリアドレス空間内の前記書込みアドレス内に書き込むステップとを含む、請求項1乃至5のうちのいずれか1項に記載の方法。 - 前記システムバスは、クイックパスインターコネクトQPIバスまたはハイパートランスポートHTバスである、請求項1乃至6のうちのいずれか1項に記載の方法。
- 書込み要求処理方法であって、前記方法は、第1のコンピュータに接続される第2のコンピュータに適用され、それぞれのオペレーティングシステムは、前記第1のコンピュータおよび前記第2のコンピュータ上でそれぞれ動作し、前記第1のコンピュータは第1のプロセッサを含み、前記第2のコンピュータは第2のプロセッサを含み、前記第1のプロセッサと前記第2のプロセッサの両方はシステムバスインタフェースを含み、前記第1のプロセッサの前記システムバスインタフェースは、システムバスを使用することによって、前記第2のプロセッサの前記システムバスインタフェースに接続され、前記第2のコンピュータの第2のメモリアドレス空間は、前記第1のコンピュータの第1のメモリアドレス空間のミラーアドレス空間であり、且つ、
前記方法は、
前記第2のプロセッサによって、前記システムバスを使用することによって、前記第1のプロセッサからターゲットデータを受信するステップであって、前記ターゲットデータは、前記第1のプロセッサのメモリ内に書き込まれるべきデータであり、且つ、前記ターゲットデータの書込みアドレスは、前記第1のメモリアドレス空間内に配置される、ステップと、
前記第2のプロセッサによって、前記ターゲットデータを、前記第2のメモリアドレス空間内に書き込むステップとを含む、方法。 - 前記第2のプロセッサによって、前記システムバスを使用することによって、前記第1のプロセッサからターゲットデータを受信する前記ステップは、
前記第2のプロセッサの非透過ブリッジによって、前記システムバスを使用することによって、前記第1のプロセッサからミラーパケットを受信するステップであって、前記ミラーパケットは、前記ターゲットデータおよび、前記書込みアドレスの、前記第2のメモリアドレス空間内のミラーアドレスを含む、ステップを含み、且つ、
前記第2のプロセッサによって、前記ターゲットデータを、前記第2のメモリアドレス空間内に書き込む前記ステップは、
前記第2のプロセッサの前記非透過ブリッジによって、前記ミラーパケットを、前記ターゲットデータのための書込みパケットに変換するステップと、
前記第2のプロセッサの前記非透過ブリッジによって、前記第2のコンピュータのメモリコントローラを使用することによって、前記書込みパケットを、前記第2のメモリアドレス空間内の前記ミラーアドレス内に書き込むステップとを含む、請求項8に記載の方法。 - 前記方法は、
前記第2のプロセッサの前記非透過ブリッジによって、前記メモリコントローラから、前記書込みパケットに対応する書込み完了パケットを受信するステップであって、前記書込み完了パケットは前記ミラーアドレスを含む、ステップと、
前記第2のプロセッサの前記非透過ブリッジによって、前記第1のメモリアドレス空間と前記第2のメモリアドレス空間との間のマッピング関係に従って、前記ミラーアドレスを前記書込みアドレスに変換するステップと、
前記第2のプロセッサの前記非透過ブリッジによって、前記ミラーパケットに対応するミラー完了パケットを、前記第1のプロセッサに送信するステップであって、前記ミラー完了パケットは前記書込みアドレスを含み、且つ、前記ミラー完了パケットは、前記ターゲットデータが前記ミラーアドレス内に書き込まれたことを示すために使用される、ステップとをさらに含む、請求項9に記載の方法。 - 前記第2のプロセッサによって、前記システムバスを使用することによって、前記第1のプロセッサからターゲットデータを受信する前記ステップは、
前記第2のプロセッサの非透過ブリッジによって、前記システムバスを使用することによって、前記第1のプロセッサからミラーパケットを受信するステップであって、前記ミラーパケットは、前記ターゲットデータおよび前記書込みアドレスを含む、ステップを含み、且つ、
前記第2のプロセッサによって、前記ターゲットデータを、前記第2のメモリアドレス空間内に書き込む前記ステップは、
前記第2のプロセッサの前記非透過ブリッジによって、前記ミラーパケットを、前記ターゲットデータのための書込みパケットに変換し、且つ、前記書込みアドレスを、前記書込みアドレスの、前記第2のメモリアドレス空間内のミラーアドレスに変換するステップと、
前記第2のプロセッサの前記非透過ブリッジによって、前記第2のコンピュータのメモリコントローラを使用することによって、前記書込みパケットを、前記第2のメモリアドレス空間内の前記ミラーアドレス内に書き込むステップとを含む、請求項8に記載の方法。 - 前記システムバスは、クイックパスインターコネクトQPIバスまたはハイパートランスポートHTバスである、請求項8乃至11のうちのいずれか1項に記載の方法。
- プロセッサであって、前記プロセッサは第1のコンピュータ内に配置され、前記第1のコンピュータは第2のコンピュータに接続され、それぞれのオペレーティングシステムは、前記第1のコンピュータおよび前記第2のコンピュータ上でそれぞれ動作し、前記第2のコンピュータは別のプロセッサを含み、前記プロセッサと前記別のプロセッサの両方はシステムバスインタフェースを含み、前記プロセッサの前記システムバスインタフェースは、システムバスを使用することによって、前記別のプロセッサの前記システムバスインタフェースに接続され、前記第2のコンピュータの第2のメモリアドレス空間は、前記第1のコンピュータの第1のメモリアドレス空間のミラーアドレス空間であり、前記プロセッサは、コントローラおよび内部バスをさらに含み、前記コントローラは、前記内部バスを使用することによって、前記プロセッサの前記システムバスインタフェースに接続され、且つ、
前記コントローラは、書き込まれるべきターゲットデータおよび前記ターゲットデータの書込みアドレスを含む、書込み要求を受信し、前記書込みアドレスが前記第1のメモリアドレス空間内に配置されていると決定し、前記書込み要求内の前記ターゲットデータを、前記第1のメモリアドレス空間内に書き込み、且つ、前記書込み要求内の前記ターゲットデータを、前記システムバスを使用することによって、前記別のプロセッサに送信するように構成され、その結果、前記別のプロセッサは、前記第2のメモリアドレス空間内に、前記ターゲットデータを書き込む、プロセッサ。 - 前記プロセッサは、非透過ブリッジをさらに含み、前記非透過ブリッジは前記システムバスインタフェースに接続され、前記非透過ブリッジは、前記内部バスを使用することによって、前記コントローラに接続され、
前記コントローラは、具体的には、前記書込み要求に従って、ミラーパケットを生成するように構成され、前記ミラーパケットは、前記ターゲットデータおよび前記書込みアドレスを含み、
前記非透過ブリッジは、前記第1のメモリアドレス空間と前記第2のメモリアドレス空間との間のミラー関係に従って、前記ミラーパケット内の前記書込みアドレスを、前記書込みアドレスの、前記第2のメモリアドレス空間内のミラーアドレスに変換して、更新されたミラーパケットを取得し、前記更新されたミラーパケットを、前記システムバスを使用することによって、前記別のプロセッサの非透過ブリッジに送信するように構成され、その結果、前記別のプロセッサは、前記別のプロセッサの前記非透過ブリッジによって受信された、前記更新されたミラーパケットに従って、前記ターゲットデータを前記ミラーアドレス内に書き込む、請求項13に記載のプロセッサ。 - 前記非透過ブリッジは、事前に設定された時間内に、前記別のプロセッサからミラー完了パケットを受信した後、前記ミラー完了パケットを前記コントローラに送信するようにさらに構成され、前記ミラー完了パケットは前記ミラーパケットに対応しているとともに、前記ターゲットデータが前記ミラーアドレス内に書き込まれたことを示すために使用され、且つ、
前記コントローラは、前記ミラー完了パケットに従って、前記ターゲットデータのためのミラーリング操作の成功を確認し、且つ、前記ミラーリング操作に対応するミラートランザクションを終了するようにさらに構成される、請求項14に記載のプロセッサ。 - 前記非透過ブリッジは、前記ミラー完了パケットが、前記事前に設定された時間内に、前記別のプロセッサから受信されないとき、ミラータイムアウトパケットを前記コントローラに送信するようにさらに構成され、且つ、
前記コントローラは、前記ミラータイムアウトパケットに従って、前記ミラーリング操作の失敗を確認し、且つ、前記ミラートランザクションを終了するようにさらに構成される、請求項15に記載のプロセッサ。 - 前記コントローラは、具体的には、前記書込み要求に従って、ミラーパケットを生成し、前記ミラーパケットを、前記プロセッサの非透過ブリッジに送信するように構成され、前記ミラーパケットは、前記ターゲットデータおよび前記書込みアドレスを含み、前記プロセッサの前記非透過ブリッジは、前記ミラーパケットを、前記システムバスを使用することによって、前記別のプロセッサの非透過ブリッジに送信し、その結果、前記別のプロセッサの前記非透過ブリッジは、前記ミラーパケット内の前記書込みアドレスを、前記書込みアドレスの、前記第2のメモリアドレス空間内のミラーアドレスに変換して、更新されたミラーパケットを取得し、且つ、前記別のプロセッサは、前記更新されたミラーパケットに従って、前記ターゲットデータを前記ミラーアドレス内に書き込む、請求項13に記載のプロセッサ。
- 前記コントローラは、具体的には、前記書込み要求に従って、前記ターゲットデータのための書込みパケットを生成し、前記書込みパケットに従って、前記ターゲットデータを、前記第1のメモリアドレス空間内の前記書込みアドレス内に書き込むように構成される、請求項13乃至17のうちのいずれか1項に記載のプロセッサ。
- 前記システムバスは、クイックパスインターコネクトQPIバスまたはハイパートランスポートHTバスである、請求項13乃至18のうちのいずれか1項に記載のプロセッサ。
- プロセッサであって、前記プロセッサは第1のコンピュータに接続される第2のコンピュータ内に配置され、それぞれのオペレーティングシステムは、前記第1のコンピュータおよび前記第2のコンピュータ上でそれぞれ動作し、前記第1のコンピュータは別のプロセッサを含み、前記別のプロセッサと前記プロセッサの両方はシステムバスインタフェースを含み、前記別のプロセッサの前記システムバスインタフェースは、システムバスを使用することによって、前記プロセッサの前記システムバスインタフェースに接続され、前記第2のコンピュータの第2のメモリアドレス空間は、前記第1のコンピュータの第1のメモリアドレス空間のミラーアドレス空間であり、前記プロセッサは、コントローラ、非透過ブリッジおよび内部バスを含み、前記非透過ブリッジは、前記プロセッサの前記システムバスインタフェースに接続され、前記コントローラは、前記内部バスを使用することによって、前記非透過ブリッジに接続され、且つ、
前記非透過ブリッジは、前記システムバスを使用することによって、前記別のプロセッサからターゲットデータを受信し、前記ターゲットデータを、前記第2のメモリアドレス空間内に書き込むように構成され、前記ターゲットデータは、前記別のプロセッサのメモリ内に書き込まれるべきデータであり、且つ、前記ターゲットデータの書込みアドレスは、前記第1のメモリアドレス空間内に配置される、プロセッサ。 - 前記非透過ブリッジは、具体的には、前記システムバスを使用することによって、前記別のプロセッサから、前記ターゲットデータおよび、前記書込みアドレスの、前記第2のメモリアドレス空間内のミラーアドレスを含む、ミラーパケットを受信し、前記ミラーパケットを、前記ターゲットデータのための書込みパケットに変換し、前記第2のコンピュータのメモリコントローラを使用することによって、前記書込みパケットを、前記第2のメモリアドレス空間内の前記ミラーアドレス内に書き込むように構成される、請求項20に記載のプロセッサ。
- 前記非透過ブリッジは、前記メモリコントローラから、前記書込みパケットに対応する、前記ミラーアドレスを含む書込み完了パケットを受信し、前記第1のメモリアドレス空間と前記第2のメモリアドレス空間との間のマッピング関係に従って、前記ミラーアドレスを前記書込みアドレスに変換し、前記ミラーパケットに対応するミラー完了パケットを、前記別のプロセッサに送信するようにさらに構成され、前記ミラー完了パケットは前記書込みアドレスを含み、且つ、前記ミラー完了パケットは、前記ターゲットデータが前記ミラーアドレス内に書き込まれたことを示すために使用される、請求項21に記載のプロセッサ。
- 前記非透過ブリッジは、具体的には、前記システムバスを使用することによって、前記別のプロセッサから、前記ターゲットデータおよび前記書込みアドレスを含む、ミラーパケットを受信し、前記ミラーパケットを、前記ターゲットデータのための書込みパケットに変換し、且つ、前記書込みアドレスを、前記書込みアドレスの、前記第2のメモリアドレス空間内のミラーアドレスに変換し、前記第2のコンピュータのメモリコントローラを使用することによって、前記書込みパケットを、前記第2のメモリアドレス空間内の前記ミラーアドレス内に書き込むように構成される、請求項20に記載のプロセッサ。
- 前記システムバスは、クイックパスインターコネクトQPIバスまたはハイパートランスポートHTバスである、請求項20乃至23のうちのいずれか1項に記載のプロセッサ。
- コンピュータであって、前記コンピュータは別のコンピュータに接続され、それぞれのオペレーティングシステムは、前記コンピュータおよび前記別のコンピュータ上でそれぞれ動作し、前記コンピュータは第1のプロセッサを含み、前記別のコンピュータは第2のプロセッサを含み、前記第1のプロセッサと前記第2のプロセッサの両方はシステムバスインタフェースを含み、前記第1のプロセッサの前記システムバスインタフェースは、システムバスを使用することによって、前記第2のプロセッサの前記システムバスインタフェースに接続され、前記別のコンピュータの第2のメモリアドレス空間は、前記コンピュータの第1のメモリアドレス空間のミラーアドレス空間であり、且つ、
前記コンピュータは、
書込み要求を受信するように構成される受信モジュールであって、前記書込み要求は、書き込まれるべきターゲットデータおよび前記ターゲットデータの書込みアドレスを含む、受信モジュールと、
前記書込みアドレスが前記第1のメモリアドレス空間内に配置されていると決定するように構成される決定モジュールと、
前記書込み要求内の前記ターゲットデータを、前記第1のメモリアドレス空間内に書き込み、且つ、前記書込み要求内の前記ターゲットデータを、前記システムバスを使用することによって、前記第2のプロセッサに送信するように構成され、その結果、前記第2のプロセッサは、前記第2のメモリアドレス空間内に、前記ターゲットデータを書き込む、ミラーリングモジュールとを含む、コンピュータ。 - 前記ミラーリングモジュールは、具体的には、前記書込み要求に従って、前記ターゲットデータおよび前記書込みアドレスを含む、ミラーパケットを生成し、前記ミラーパケットを、前記第1のプロセッサの非透過ブリッジに送信し、前記第1のメモリアドレス空間と前記第2のメモリアドレス空間との間のミラー関係に従って、前記ミラーパケット内の前記書込みアドレスを、前記書込みアドレスの、前記第2のメモリアドレス空間内のミラーアドレスに変換して、更新されたミラーパケットを取得し、前記更新されたミラーパケットを、前記システムバスを使用することによって、前記第2のプロセッサの非透過ブリッジに送信するように構成され、その結果、前記第2のプロセッサは、前記第2のプロセッサの前記非透過ブリッジによって受信された、前記更新されたミラーパケットに従って、前記ターゲットデータを前記ミラーアドレス内に書き込む、請求項25に記載のコンピュータ。
- 前記ミラーリングモジュールは、前記第1のプロセッサの前記非透過ブリッジが、事前に設定された時間内に、前記第2のプロセッサからミラー完了パケットを受信した後、前記ミラー完了パケットを前記第1のプロセッサに送信し、前記ミラー完了パケットに従って、前記ターゲットデータのためのミラーリング操作の成功を確認し、且つ、前記ミラーリング操作に対応するミラートランザクションを終了するようにさらに構成され、前記ミラー完了パケットは前記ミラーパケットに対応しているとともに、前記ターゲットデータが前記ミラーアドレス内に書き込まれたことを示すために使用される、請求項26に記載のコンピュータ。
- 前記ミラーリングモジュールは、前記第1のプロセッサの前記非透過ブリッジが、前記事前に設定された時間内に、前記第2のプロセッサから前記ミラー完了パケットを受信しないとき、ミラータイムアウトパケットを前記第1のプロセッサに送信し、前記ミラータイムアウトパケットに従って、前記ミラーリング操作の失敗を確認し、且つ、前記ミラートランザクションを終了するようにさらに構成される、請求項27に記載のコンピュータ。
- 前記ミラーリングモジュールは、前記書込み要求に従って、前記ターゲットデータおよび前記書込みアドレスを含む、ミラーパケットを生成し、前記ミラーパケットを、前記第1のプロセッサの非透過ブリッジに送信するようにさらに構成され、前記第1のプロセッサの前記非透過ブリッジは、前記ミラーパケットを、前記システムバスを使用することによって、前記第2のプロセッサの非透過ブリッジに送信し、その結果、前記第2のプロセッサの前記非透過ブリッジは、前記ミラーパケット内の前記書込みアドレスを、前記書込みアドレスの、前記第2のメモリアドレス空間内のミラーアドレスに変換して、更新されたミラーパケットを取得し、且つ、前記第2のプロセッサは、前記更新されたミラーパケットに従って、前記ターゲットデータを前記ミラーアドレス内に書き込む、請求項25に記載のコンピュータ。
- 前記ミラーリングモジュールは、具体的には、前記書込み要求に従って、前記ターゲットデータのための書込みパケットを生成し、前記書込みパケットに従って、前記ターゲットデータを、前記第1のメモリアドレス空間内の前記書込みアドレス内に書き込むように構成される、請求項25乃至29のうちのいずれか1項に記載のコンピュータ。
- 前記システムバスは、クイックパスインターコネクトQPIバスまたはハイパートランスポートHTバスである、請求項25乃至30のうちのいずれか1項に記載のコンピュータ。
- コンピュータであって、前記コンピュータは別のコンピュータに接続され、それぞれのオペレーティングシステムは、前記別のコンピュータおよび前記コンピュータ上でそれぞれ動作し、前記別のコンピュータは第1のプロセッサを含み、前記コンピュータは第2のプロセッサを含み、前記第1のプロセッサと前記第2のプロセッサの両方はシステムバスインタフェースを含み、前記第1のプロセッサの前記システムバスインタフェースは、システムバスを使用することによって、前記第2のプロセッサの前記システムバスインタフェースに接続され、前記コンピュータの第2のメモリアドレス空間は、前記別のコンピュータの第1のメモリアドレス空間のミラーアドレス空間であり、且つ、
前記コンピュータは、
前記システムバスを使用することによって、前記第1のプロセッサからターゲットデータを受信するように構成されるミラーリングモジュールであって、前記ターゲットデータは、前記第1のプロセッサのメモリ内に書き込まれるべきデータであり、且つ、前記ターゲットデータの書込みアドレスは、前記第1のメモリアドレス空間内に配置される、ミラーリングモジュールと、
前記ターゲットデータを、前記第2のメモリアドレス空間内に書き込むように構成される書込み操作モジュールとを含む、コンピュータ。 - 前記ミラーリングモジュールは、具体的には、前記システムバスを使用することによって、前記第1のプロセッサから、前記ターゲットデータおよび、前記書込みアドレスの、前記第2のメモリアドレス空間内のミラーアドレスを含む、ミラーパケットを受信するように構成され、且つ、前記書込み操作モジュールは、具体的には、前記ミラーパケットを、前記ターゲットデータのための書込みパケットに変換し、前記コンピュータのメモリコントローラを使用することによって、前記書込みパケットを、前記第2のメモリアドレス空間内の前記ミラーアドレス内に書き込むように構成される、請求項32に記載のコンピュータ。
- 前記ミラーリングモジュールは、前記メモリコントローラから、前記書込みパケットに対応する、前記ミラーアドレスを含む、書込み完了パケットを受信し、前記第1のメモリアドレス空間と前記第2のメモリアドレス空間との間のマッピング関係に従って、前記ミラーアドレスを前記書込みアドレスに変換し、前記ミラーパケットに対応するミラー完了パケットを、前記第1のプロセッサに送信するようにさらに構成され、前記ミラー完了パケットは前記書込みアドレスを含み、且つ、前記ミラー完了パケットは、前記ターゲットデータが前記ミラーアドレス内に書き込まれたことを示すために使用される、請求項33に記載のコンピュータ。
- 前記ミラーリングモジュールは、具体的には、前記システムバスを使用することによって、前記第1のプロセッサから、前記ターゲットデータおよび前記書込みアドレスを含む、ミラーパケットを受信するように構成され、且つ、前記書込み操作モジュールは、具体的には、前記ミラーパケットを、前記ターゲットデータのための書込みパケットに変換し、且つ、前記書込みアドレスを、前記書込みアドレスの、前記第2のメモリアドレス空間内のミラーアドレスに変換し、前記第2のコンピュータのメモリコントローラを使用することによって、前記書込みパケットを、前記第2のメモリアドレス空間内の前記ミラーアドレス内に書き込むように構成される、請求項32に記載のコンピュータ。
- 前記システムバスは、クイックパスインターコネクトQPIバスまたはハイパートランスポートHTバスである、請求項32乃至35のうちのいずれか1項に記載のコンピュータ。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2015/097742 WO2017101080A1 (zh) | 2015-12-17 | 2015-12-17 | 处理写请求的方法、处理器和计算机 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2018503156A true JP2018503156A (ja) | 2018-02-01 |
Family
ID=59055462
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017525338A Pending JP2018503156A (ja) | 2015-12-17 | 2015-12-17 | 書込み要求処理方法、プロセッサおよびコンピュータ |
Country Status (11)
Country | Link |
---|---|
US (1) | US20170220255A1 (ja) |
EP (1) | EP3211535A4 (ja) |
JP (1) | JP2018503156A (ja) |
KR (1) | KR20170086484A (ja) |
CN (1) | CN107209725A (ja) |
AU (1) | AU2015411096A1 (ja) |
BR (1) | BR112017008674A2 (ja) |
CA (1) | CA2963915A1 (ja) |
RU (1) | RU2017118316A (ja) |
SG (1) | SG11201702806UA (ja) |
WO (1) | WO2017101080A1 (ja) |
Families Citing this family (6)
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 | 苏州浪潮智能科技有限公司 | 一种多控制器的数据备份方法及相关装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110238909A1 (en) * | 2010-03-29 | 2011-09-29 | Pankaj Kumar | Multicasting Write Requests To Multiple Storage Controllers |
JP2015501957A (ja) * | 2012-03-23 | 2015-01-19 | 株式会社日立製作所 | 二重化共有メモリアクセス方法と二重化共有メモリアクセス方法を用いたストレージ装置 |
Family Cites Families (12)
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 |
US8751714B2 (en) * | 2010-09-24 | 2014-06-10 | Intel Corporation | Implementing quickpath interconnect protocol over a PCIe interface |
CN103562882B (zh) * | 2011-05-16 | 2016-10-12 | 甲骨文国际公司 | 用于提供消息传送应用程序接口的系统和方法 |
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镜像方法 |
-
2015
- 2015-12-17 WO PCT/CN2015/097742 patent/WO2017101080A1/zh active Application Filing
- 2015-12-17 KR KR1020177011796A patent/KR20170086484A/ko not_active Application Discontinuation
- 2015-12-17 CA CA2963915A patent/CA2963915A1/en not_active Abandoned
- 2015-12-17 EP EP15908487.0A patent/EP3211535A4/en not_active Withdrawn
- 2015-12-17 AU AU2015411096A patent/AU2015411096A1/en not_active Abandoned
- 2015-12-17 CN CN201580012641.1A patent/CN107209725A/zh active Pending
- 2015-12-17 JP JP2017525338A patent/JP2018503156A/ja active Pending
- 2015-12-17 RU RU2017118316A patent/RU2017118316A/ru unknown
- 2015-12-17 SG SG11201702806UA patent/SG11201702806UA/en unknown
- 2015-12-17 BR BR112017008674A patent/BR112017008674A2/pt not_active Application Discontinuation
-
2017
- 2017-04-14 US US15/487,779 patent/US20170220255A1/en not_active Abandoned
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110238909A1 (en) * | 2010-03-29 | 2011-09-29 | Pankaj Kumar | Multicasting Write Requests To Multiple Storage Controllers |
JP2015501957A (ja) * | 2012-03-23 | 2015-01-19 | 株式会社日立製作所 | 二重化共有メモリアクセス方法と二重化共有メモリアクセス方法を用いたストレージ装置 |
Also Published As
Publication number | Publication date |
---|---|
BR112017008674A2 (pt) | 2018-06-19 |
RU2017118316A (ru) | 2018-11-26 |
US20170220255A1 (en) | 2017-08-03 |
EP3211535A4 (en) | 2017-11-22 |
CA2963915A1 (en) | 2017-06-17 |
SG11201702806UA (en) | 2017-07-28 |
CN107209725A (zh) | 2017-09-26 |
KR20170086484A (ko) | 2017-07-26 |
AU2015411096A1 (en) | 2017-07-06 |
EP3211535A1 (en) | 2017-08-30 |
RU2017118316A3 (ja) | 2018-11-26 |
WO2017101080A1 (zh) | 2017-06-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2018503156A (ja) | 書込み要求処理方法、プロセッサおよびコンピュータ | |
US9678918B2 (en) | Data processing system and data processing method | |
US11593291B2 (en) | Methods and apparatus for high-speed data bus connection and fabric management | |
US9619389B1 (en) | System for a backward and forward application environment compatible distributed shared coherent storage | |
TWI431475B (zh) | 用於在本地代理者之記憶體鏡像及遷移之裝置、系統及方法 | |
WO2016037503A1 (zh) | PCIe拓扑的配置方法和装置 | |
US9734115B2 (en) | Memory mapping method and memory mapping system | |
US9087162B2 (en) | Using a PCI standard hot plug controller to modify the hierarchy of a distributed switch | |
US20220188249A1 (en) | Memory appliance couplings and operations | |
TWI795491B (zh) | 驅動器至驅動器儲存系統、儲存驅動器和儲存資料的方法 | |
CN115344197A (zh) | 一种数据访问方法、网卡及服务器 | |
US11494096B2 (en) | System and method for storage array enclosure discovery | |
CN114546913A (zh) | 一种基于pcie接口的多主机之间数据高速交互的方法和装置 | |
CN116185553A (zh) | 数据迁移方法、装置及电子设备 | |
WO2021012169A1 (zh) | 一种提高存储系统可靠性的方法和相关装置 | |
EP3796615B1 (en) | Fault tolerance processing method, device, and server | |
WO2022155919A1 (zh) | 一种故障处理方法、装置及系统 | |
CN111131224B (zh) | 一种维护连接的方法及存储设备 | |
TWI567638B (zh) | 多核心處理器、多核心處理系統、及初始化處理核心之方法 | |
US20200387396A1 (en) | Information processing apparatus and information processing system | |
US10289308B2 (en) | Architecture and method for an interconnected data storage system using a unified data bus | |
JP2015053555A (ja) | データ転送装置、およびデータ転送方法 | |
TW202341702A (zh) | 執行抹除碼恢復的方法及系統 | |
CN116225986A (zh) | 一种存储系统、数据处理方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170519 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20170519 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20180426 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20180521 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180816 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20190204 |