JP2019095844A - データ転送装置およびデータ転送方法 - Google Patents
データ転送装置およびデータ転送方法 Download PDFInfo
- Publication number
- JP2019095844A JP2019095844A JP2017222120A JP2017222120A JP2019095844A JP 2019095844 A JP2019095844 A JP 2019095844A JP 2017222120 A JP2017222120 A JP 2017222120A JP 2017222120 A JP2017222120 A JP 2017222120A JP 2019095844 A JP2019095844 A JP 2019095844A
- Authority
- JP
- Japan
- Prior art keywords
- transfer
- data
- memory
- dma
- unit
- 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.)
- Granted
Links
Images
Classifications
-
- 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/4009—Coupling between buses with data restructuring
- G06F13/4018—Coupling between buses with data restructuring with data-width conversion
-
- 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/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
- G06F13/1673—Details of memory controller using buffers
-
- 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/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
- G06F13/1678—Details of memory controller using bus width
-
- 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/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
- G06F13/1689—Synchronisation and timing concerns
-
- 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/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/28—Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Mathematical Physics (AREA)
- Bus Control (AREA)
- Information Transfer Systems (AREA)
Abstract
Description
まず、図1を参照しながら、本実施形態のストレージ制御装置(CM)10−1,10−2を含むストレージ装置1のハードウェア構成について説明する。なお、図1は、本実施形態のストレージ制御装置10−1,10−2を含むストレージ装置1のハードウェア構成の一例を示すブロック図である。
上述の如く構成された本実施形態の一例としてのストレージ装置1におけるデータ転送方法を、図4を参照しながら、図5および図6を用いて説明する。
上記例においては、2KBという比較的小さなデータの転送であるので、ライトDMA142からの、PCIeバスにおける転送効率のよいデータサイズ単位でのデータのライトが1回だけ行なわれる(図5の符号S4参照)。しかしながら、より大きなデータ転送を行なう際には、このような転送効率のよいデータサイズ単位でのデータのライトが複数回発生し、これにより、全体のデータ転送効率がより向上する。
上記例においては、2KBという比較的小さなデータの転送であるので、シーケンサ#0による、ライトDMA142からのPCIeバスにおける転送効率のよいデータサイズ単位でのデータのライトが1回だけ行なわれる(図7の符号B18参照)。しかしながら、より大きなデータ転送を行なう際には、このような転送効率のよいデータサイズ単位でのデータのライトが複数回発生し、これにより、全体のデータ転送効率がより向上する。
このように、本発明の一実施形態としてのストレージ装置1によれば、転送元メモリ12から転送先メモリ12へのデータ転送を行なうに際して、DMAブロック141が、PCIe転送好適サイズである256B(= MPS)の整数倍のサイズ(転送サイズ)単位で分割してデータの転送を行なう。これにより、転送元メモリ12から転送先メモリ12へのデータ転送路におけるデータの転送効率を向上させることができ、DMAにおけるデータ転送性能を向上させることができる。
開示の技術は上述した実施形態に限定されるものではなく、本実施形態の趣旨を逸脱しない範囲で種々変形して実施することができる。本実施形態の各構成および各処理は、必要に応じて取捨選択することができ、あるいは適宜組み合わせてもよい。
以上の実施形態に関し、さらに以下の付記を開示する。
第1データサイズの第1データブロック単位でデータを格納する第1メモリから第2メモリに、第2データサイズ幅の通信路を介して転送データを転送するデータ転送装置において、
前記第1メモリから読み出された前記転送データを格納する格納部と、
前記格納部に格納された前記転送データを、前記第1メモリから前記第2メモリに、前記第2データサイズの整数倍単位で転送する転送制御部と
を備えることを特徴とする、データ転送装置。
前記第1データブロックが整合情報を有し、
転送元である前記第1メモリから転送データをリードし、転送先である前記第2メモリに前記転送データをライトすることで、前記転送データの転送を実行する転送実行部と、
前記転送実行部に前記転送データの転送を指示し、前記転送実行部よりも多く備えられた複数の転送指示部と、
前記複数の転送指示部のうち、前記転送実行部を占有して転送指示を行なう前記転送指示部を切り替える切替制御部と、
前記整合情報を用いて前記転送データの整合性確認を行なう整合性確認部と、
前記切替制御部が、前記転送実行部を占有する前記転送指示部を切替える際に、切替前に前記転送指示部が記憶部に保存した、前記整合性確認部による前記整合性確認の中断時に算出された整合性確認演算途中値と、前記整合性確認の進捗情報とを、前記転送実行部への転送再開指示とともに、切替後の前記転送の再開時に前記整合性確認部に通知する通知部と
をそなえ、
前記整合性確認部が、通知された前記整合性確認演算途中値および進捗情報に基づいて、前記整合性確認を再開する
ことを特徴とする、付記1記載のデータ転送装置。
第1データサイズの第1データブロック単位でデータを格納する第1メモリから第2メモリに、第2データサイズ幅の通信路を介して転送データを転送するデータ転送装置において、
前記第1メモリから読み出された前記転送データを格納部に格納する処理と、
前記格納部に格納された前記転送データを、前記第1メモリから前記第2メモリに、前記第2データサイズの整数倍単位で転送する処理と
を備えることを特徴とする、データ転送方法。
前記第1データブロックが整合情報を有し、
前記データ転送装置が、
転送元である前記第1メモリから転送データをリードし、転送先である前記第2メモリに前記転送データをライトすることで、前記転送データの転送を実行する転送実行部と、
前記転送実行部に前記転送データの転送を指示し、前記転送実行部よりも多く備えられた複数の転送指示部と、
前記複数の転送指示部のうち、前記転送実行部を占有して転送指示を行なう前記転送指示部を切り替える切替制御部と、
前記整合情報を用いて前記転送データの整合性確認を行なう整合性確認部とをそなえ、
前記切替制御部が、前記転送実行部を占有する前記転送指示部を切替える際に、切替前に前記転送指示部が記憶部に保存した、前記整合性確認部による前記整合性確認の中断時に算出された整合性確認演算途中値と、前記整合性確認の進捗情報とを、前記転送実行部への転送再開指示とともに、切替後の前記転送の再開時に前記整合性確認部に通知する処理と、
前記整合性確認部が、通知された前記整合性確認演算途中値および進捗情報に基づいて、前記整合性確認を再開する処理と
を備えることを特徴とする、付記3記載のデータ転送方法。
10,10−1,10−2 CM
11 CPU
12 メモリ
13 スイッチ
14 DMAコントローラ
141 DMAブロック
142 ライトDMA
143 リードDMA
1431 整合性チェック部
1432 進捗管理部
145 シーケンサ
146 メモリ
147 プロセッサ
1471 保存制御部
1472 転送制御部
149 調停回路
151 BCCチェック演算途中値
152 カウント値
153 バッファ領域
160 PCIeコントローラ
Claims (3)
- 第1データサイズの第1データブロック単位でデータを格納する第1メモリから第2メモリに、第2データサイズ幅の通信路を介して転送データを転送するデータ転送装置において、
前記第1メモリから読み出された前記転送データを格納する格納部と、
前記格納部に格納された前記転送データを、前記第1メモリから前記第2メモリに、前記第2データサイズの整数倍単位で転送する転送制御部と
を備えることを特徴とする、データ転送装置。 - 前記第1データブロックが整合情報を有し、
転送元である前記第1メモリから転送データをリードし、転送先である前記第2メモリに前記転送データをライトすることで、前記転送データの転送を実行する転送実行部と、
前記転送実行部に前記転送データの転送を指示し、前記転送実行部よりも多く備えられた複数の転送指示部と、
前記複数の転送指示部のうち、前記転送実行部を占有して転送指示を行なう前記転送指示部を切り替える切替制御部と、
前記整合情報を用いて前記転送データの整合性確認を行なう整合性確認部と、
前記切替制御部が、前記転送実行部を占有する前記転送指示部を切替える際に、切替前に前記転送指示部が記憶部に保存した、前記整合性確認部による前記整合性確認の中断時に算出された整合性確認演算途中値と、前記整合性確認の進捗情報とを、前記転送実行部への転送再開指示とともに、切替後の前記転送の再開時に前記整合性確認部に通知する通知部と
をそなえ、
前記整合性確認部が、通知された前記整合性確認演算途中値および進捗情報に基づいて、前記整合性確認を再開する
ことを特徴とする、請求項1記載のデータ転送装置。 - 第1データサイズの第1データブロック単位でデータを格納する第1メモリから第2メモリに、第2データサイズ幅の通信路を介して転送データを転送するデータ転送装置において、
前記第1メモリから読み出された前記転送データを格納部に格納する処理と、
前記格納部に格納された前記転送データを、前記第1メモリから前記第2メモリに、前記第2データサイズの整数倍単位で転送する処理と
を備えることを特徴とする、データ転送方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017222120A JP7006166B2 (ja) | 2017-11-17 | 2017-11-17 | データ転送装置およびデータ転送方法 |
US16/175,896 US10733127B2 (en) | 2017-11-17 | 2018-10-31 | Data transmission apparatus and data transmission method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017222120A JP7006166B2 (ja) | 2017-11-17 | 2017-11-17 | データ転送装置およびデータ転送方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2019095844A true JP2019095844A (ja) | 2019-06-20 |
JP7006166B2 JP7006166B2 (ja) | 2022-01-24 |
Family
ID=66533927
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017222120A Active JP7006166B2 (ja) | 2017-11-17 | 2017-11-17 | データ転送装置およびデータ転送方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US10733127B2 (ja) |
JP (1) | JP7006166B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111176582A (zh) * | 2019-12-31 | 2020-05-19 | 北京百度网讯科技有限公司 | 矩阵存储方法、矩阵访问方法、装置和电子设备 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008199351A (ja) * | 2007-02-14 | 2008-08-28 | Seiko Epson Corp | 画素データ転送制御装置及び画素データ転送制御方法 |
JP2014113328A (ja) * | 2012-12-10 | 2014-06-26 | Hoya Corp | 電子内視鏡システム |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005108304A (ja) * | 2003-09-29 | 2005-04-21 | Toshiba Corp | 半導体記憶装置及びその制御方法 |
US7366864B2 (en) * | 2004-03-08 | 2008-04-29 | Micron Technology, Inc. | Memory hub architecture having programmable lane widths |
TWI260024B (en) * | 2005-01-18 | 2006-08-11 | Vivotek Inc | An architecture for reading and writing an external memory |
JP4362134B2 (ja) | 2007-02-09 | 2009-11-11 | 富士通株式会社 | データアクセス方法、チャネルアダプタ、データアクセス制御装置およびデータアクセスプログラム |
US8972667B2 (en) * | 2011-06-28 | 2015-03-03 | International Business Machines Corporation | Exchanging data between memory controllers |
US8984203B2 (en) * | 2012-10-09 | 2015-03-17 | Sandisk Technologies Inc. | Memory access control module and associated methods |
CN105283856A (zh) * | 2013-06-28 | 2016-01-27 | 惠普发展公司,有限责任合伙企业 | 能够在多个数据宽度下通信的存储器组件 |
CN107430548B (zh) * | 2015-03-06 | 2021-02-05 | 东芝存储器株式会社 | 存储装置的控制方法、及存储装置 |
JP2016181126A (ja) | 2015-03-24 | 2016-10-13 | ヤマハ株式会社 | Dmaコントローラ |
US20170285992A1 (en) * | 2016-04-01 | 2017-10-05 | Intel Corporation | Memory subsystem with narrow bandwidth repeater channel |
US10339072B2 (en) * | 2016-04-01 | 2019-07-02 | Intel Corporation | Read delivery for memory subsystem with narrow bandwidth repeater channel |
US10489315B2 (en) * | 2017-09-06 | 2019-11-26 | Arm Limited | Dynamic adaptation of direct memory transfer in a data processing system with mismatched data-bus widths |
-
2017
- 2017-11-17 JP JP2017222120A patent/JP7006166B2/ja active Active
-
2018
- 2018-10-31 US US16/175,896 patent/US10733127B2/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008199351A (ja) * | 2007-02-14 | 2008-08-28 | Seiko Epson Corp | 画素データ転送制御装置及び画素データ転送制御方法 |
JP2014113328A (ja) * | 2012-12-10 | 2014-06-26 | Hoya Corp | 電子内視鏡システム |
Also Published As
Publication number | Publication date |
---|---|
US20190155774A1 (en) | 2019-05-23 |
JP7006166B2 (ja) | 2022-01-24 |
US10733127B2 (en) | 2020-08-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11500810B2 (en) | Techniques for command validation for access to a storage device by a remote client | |
US9986028B2 (en) | Techniques to replicate data between storage servers | |
US10423568B2 (en) | Apparatus and method for transferring data and commands in a memory management environment | |
US9557922B2 (en) | System and method for peer-to-peer PCIe storage transfers | |
JP5437922B2 (ja) | 同時データ操作が可能なdmaエンジン | |
US8819304B2 (en) | Storage system with multicast DMA and unified address space | |
US10558367B2 (en) | Adaptive transaction layer packet for latency balancing | |
US9244881B2 (en) | Facilitating, at least in part, by circuitry, accessing of at least one controller command interface | |
TWI636366B (zh) | 資料冗餘的處理方法及其相關電腦系統 | |
US10740000B2 (en) | Adaptive transaction layer packet for latency balancing | |
US11003606B2 (en) | DMA-scatter and gather operations for non-contiguous memory | |
US10817446B1 (en) | Optimized multiport NVMe controller for multipath input/output applications | |
JP2019095844A (ja) | データ転送装置およびデータ転送方法 | |
KR20120134918A (ko) | 복수의 프로세서를 포함하는 전자 장치 | |
TWI567638B (zh) | 多核心處理器、多核心處理系統、及初始化處理核心之方法 | |
JP6825263B2 (ja) | ストレージ制御装置、およびストレージシステム | |
WO2016170673A1 (ja) | 計算機システム、及び、メモリモジュール |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20190607 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20200807 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20210511 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20210512 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210712 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20210824 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20211117 |
|
C60 | Trial request (containing other claim documents, opposition documents) |
Free format text: JAPANESE INTERMEDIATE CODE: C60 Effective date: 20211117 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20211126 |
|
C21 | Notice of transfer of a case for reconsideration by examiners before appeal proceedings |
Free format text: JAPANESE INTERMEDIATE CODE: C21 Effective date: 20211130 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20211207 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20211220 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7006166 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |