JP5349515B2 - バッファ管理装置、バッファ管理方法及び記憶装置 - Google Patents
バッファ管理装置、バッファ管理方法及び記憶装置 Download PDFInfo
- Publication number
- JP5349515B2 JP5349515B2 JP2011055669A JP2011055669A JP5349515B2 JP 5349515 B2 JP5349515 B2 JP 5349515B2 JP 2011055669 A JP2011055669 A JP 2011055669A JP 2011055669 A JP2011055669 A JP 2011055669A JP 5349515 B2 JP5349515 B2 JP 5349515B2
- Authority
- JP
- Japan
- Prior art keywords
- credit
- data
- reservation
- credit value
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- 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
-
- 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/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0656—Data buffering arrangements
-
- 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/0671—In-line storage system
- G06F3/0673—Single storage device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F5/00—Methods or arrangements for data conversion without changing the order or content of the data handled
- G06F5/06—Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor
- G06F5/065—Partitioned buffers, e.g. allowing multiple independent queues, bidirectional FIFO's
Description
10 SASモジュール
11 PHY部
12 LINK部
13 PORT部
14 RxFIFO部
15 TxFIFO部
16 TRANSPORT部
161 リード用変換テーブル
162 ライト用変換テーブル
17 APP部
20 バッファ管理モジュール
21 リード用AFIFO部
22 リードバッファ
23 ライト用AFIFO部
24 ライトバッファ
25、25A クレジット管理部
30 記憶媒体
40、40A ライトバッファ管理部
41、41A 現クレジットレジスタ
42、42A 予約クレジット値管理部
421 予約クレジットレジスタ
422、422A セレクタ
423、423A セレクタ
424 加算器
43 減算器
44 データ転送制御部
441 調停器
442 ページサイズ演算部
443 比較器
444 セレクタ
445 通知値演算部
200 ホスト
Claims (10)
- 所定のデータサイズを表すクレジット単位で記憶領域を管理し、外部装置から転送されるデータを一時記憶するバッファメモリと、
前記バッファメモリで現在使用することが可能なクレジット数を、現クレジット値として保持する現クレジット保持手段と、
予約クレジット保持手段と、
前記外部装置から前記バッファメモリへのデータの転送に先駆けて、当該データの一時記憶に必要なクレジット数を、予約クレジット値として前記予約クレジット保持手段に登録する転送制御手段と、
前記現クレジット保持手段が保持する前記現クレジット値から、前記予約クレジット保持手段に登録された前記予約クレジット値を減算し、当該減算結果を使用可能クレジット値として出力する減算手段と、
を備えるバッファ管理装置。 - 前記現クレジット保持手段は、前記予約クレジット値分のデータが前記バッファメモリに転送される毎に、当該予約クレジット値を前記現クレジット値から減算するとともに、前記バッファメモリから前記クレジット単位分のデータが出力される毎に、前記現クレジット値を1インクリメントし、
前記予約クレジット保持手段は、前記予約クレジット値分のデータの前記バッファメモリへの転送に応じて、自己が保持する前記予約クレジット値をクリアする請求項1に記載のバッファ管理装置。 - 外部装置から転送されたデータを前記クレジット単位又は当該クレジットを構成する構成単位に変換し、前記バッファメモリに転送する中間バッファを更に備え、
前記現クレジット保持手段は、前記中間バッファによる前記予約クレジット値分のデータの転送完了に応じて、当該予約クレジット値を前記現クレジット値から減算し、
前記予約クレジット保持手段は、前記中間バッファによる前記予約クレジット値分のデータの転送完了に応じて、自己が保持する前記予約クレジット値をクリアする請求項2に記載のバッファ管理装置。 - 前記現クレジット保持手段は、前記クレジット単位分のデータが前記バッファメモリに転送される毎に、前記現クレジット値を1デクリメントする請求項2に記載のバッファ管理装置。
- 前記転送制御手段は、前記減算手段が出力した前記使用可能クレジット値に基づいて、前記外部装置が転送するデータのデータサイズと、当該データサイズに応じた前記予約クレジット値とを決定する請求項1〜4の何れか一項に記載のバッファ管理装置。
- 前記転送制御手段は、外部装置からのライトコマンドにより書き込みが要求されたデータのデータサイズを、前記クレジットの単位系に変換する変換手段と、
前記変換手段で変換されたデータサイズと、前記使用可能クレジット値と、予め定められた受領可能なクレジット数の最大値とを比較し、その最小値を前記予約クレジット値として選択する選択手段と、
前記選択手段が選択した前記予約クレジット値分のデータサイズを指示した、トランスファーレディ信号を前記外部装置に通知する通知手段と、
を更に有する請求項5に記載のバッファ管理装置。 - 前記転送制御手段と前記予約クレジット保持手段とを複数備え、
前記転送制御手段は、他の前記転送制御手段との間で、前記使用可能クレジット値の使用要求を調停し、一つの前記転送制御手段に対して、前記使用可能クレジット値の使用許可を与える調停手段を更に備え、
前記減算手段は、前記現クレジット保持手段が保持する前記現クレジット値から、前記予約クレジット保持手段の各々に保持された前記予約クレジット値の合計値を減算し、当該減算結果を前記使用可能クレジット値として出力する請求項1〜6の何れか一項に記載のバッファ管理装置。 - 前記クレジットは、1セクタ又は複数のセクタで構成される1ページ分のデータサイズを単位とする請求項1〜7の何れか一項に記載のバッファ管理装置。
- 所定のデータサイズを表すクレジット単位で記憶領域を管理し、外部装置から転送されるデータを一時記憶するバッファメモリのバッファ管理方法であって、
前記バッファメモリで現在使用することが可能なクレジット数を、現クレジット値として現クレジット保持手段に保持する現クレジット保持工程と、
前記バッファメモリへのデータの転送に先駆けて、当該データの一時記憶に必要なクレジット数を、予約クレジット値として予約クレジット保持手段に登録するデータ転送制御工程と、
前記現クレジット保持手段に保持された前記現クレジット値から、前記予約クレジット保持手段に登録された前記予約クレジット値を減算し、当該減算結果を使用可能クレジット値として出力する減算工程と、
を含むバッファ管理方法。 - ホスト装置と接続可能な接続手段と、
所定のデータサイズを表すクレジット単位で記憶領域を管理し、前記ホスト装置から転送されるデータを一時記憶するバッファメモリと、
前記バッファメモリに一時記憶されたデータの書き込み先となる記憶媒体と、
前記バッファメモリで現在使用することが可能なクレジット数を、現クレジット値として保持する現クレジット保持手段と、
予約クレジット保持手段と、
前記ホスト装置から前記バッファメモリへのデータの転送に先駆けて、当該データの一時記憶に必要なクレジット数を、予約クレジット値として前記予約クレジット保持手段に登録する転送制御手段と、
前記現クレジット保持手段が保持する前記現クレジット値から、前記予約クレジット保持手段に登録された前記予約クレジット値を減算し、当該減算結果を使用可能クレジット値として出力する減算手段と、
を備える記憶装置。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011055669A JP5349515B2 (ja) | 2011-03-14 | 2011-03-14 | バッファ管理装置、バッファ管理方法及び記憶装置 |
US13/285,347 US8904065B2 (en) | 2011-03-14 | 2011-10-31 | Buffer management device, buffer management method, and storage device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011055669A JP5349515B2 (ja) | 2011-03-14 | 2011-03-14 | バッファ管理装置、バッファ管理方法及び記憶装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2012190415A JP2012190415A (ja) | 2012-10-04 |
JP5349515B2 true JP5349515B2 (ja) | 2013-11-20 |
Family
ID=46829388
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011055669A Expired - Fee Related JP5349515B2 (ja) | 2011-03-14 | 2011-03-14 | バッファ管理装置、バッファ管理方法及び記憶装置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US8904065B2 (ja) |
JP (1) | JP5349515B2 (ja) |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140237170A1 (en) * | 2011-09-13 | 2014-08-21 | Kabushiki Kaisha Toshiba | Storage device, and read command executing method |
CN103023613B (zh) * | 2012-12-14 | 2018-06-01 | 中兴通讯股份有限公司 | 一种对数据帧长度进行校验的方法及装置 |
US9075557B2 (en) * | 2013-05-15 | 2015-07-07 | SanDisk Technologies, Inc. | Virtual channel for data transfers between devices |
JP6331787B2 (ja) * | 2014-07-08 | 2018-05-30 | 富士通株式会社 | データ送受信システム、データ送信装置およびデータ送受信システムの制御方法 |
US10061734B2 (en) | 2015-05-20 | 2018-08-28 | International Business Machines Corporation | Adjustment of buffer credits and other parameters in a startup phase of communications between a plurality of channels and a control unit |
US9864716B2 (en) * | 2015-05-20 | 2018-01-09 | International Business Machines Corporation | Receiving buffer credits by a plurality of channels of one or more host computational devices for transmitting data to a control unit |
US9892065B2 (en) * | 2015-05-20 | 2018-02-13 | International Business Machines Corporation | Adjustments of buffer credits for optimizing the number of retry operations and transfer ready operations |
US9934174B2 (en) * | 2015-09-18 | 2018-04-03 | Seagate Technology Llc | Selectively enable data transfer based on accrued data credits |
US10257098B1 (en) * | 2015-12-29 | 2019-04-09 | Amazon Technologies, Inc. | Credit mechanisms for packet policing |
US10249017B2 (en) * | 2016-08-11 | 2019-04-02 | Intel Corporation | Apparatus and method for shared resource partitioning through credit management |
CN106843769B (zh) * | 2017-01-23 | 2019-08-02 | 北京齐尔布莱特科技有限公司 | 一种接口数据缓存方法、装置和计算设备 |
US10235082B1 (en) * | 2017-10-18 | 2019-03-19 | EMC IP Holding Company LLC | System and method for improving extent pool I/O performance by introducing disk level credits on mapped RAID |
US10996888B2 (en) * | 2017-10-31 | 2021-05-04 | Qualcomm Incorporated | Write credits management for non-volatile memory |
US11409436B2 (en) | 2018-08-08 | 2022-08-09 | Micron Technology, Inc. | Buffer management in memory systems for read and write requests |
US11231963B2 (en) * | 2019-08-15 | 2022-01-25 | Intel Corporation | Methods and apparatus to enable out-of-order pipelined execution of static mapping of a workload |
US11297006B1 (en) * | 2020-06-03 | 2022-04-05 | Cisco Technology, Inc. | Use of virtual lanes to solve credit stall on target ports in FC SAN |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06110653A (ja) * | 1992-09-25 | 1994-04-22 | Tokyo Electron Ltd | メモリシステム及びそれを用いたメモリ制御方法 |
JP2576775B2 (ja) * | 1993-10-08 | 1997-01-29 | 日本電気株式会社 | 磁気テープ先読み制御装置 |
JPH0854993A (ja) * | 1994-08-11 | 1996-02-27 | Ricoh Co Ltd | 受信データ制御装置 |
JP2943710B2 (ja) * | 1996-08-02 | 1999-08-30 | 日本電気株式会社 | バッファのビジー制御方式 |
JPH11175312A (ja) * | 1997-12-08 | 1999-07-02 | Ricoh Co Ltd | データ転送制御装置 |
JP4403677B2 (ja) * | 2001-08-27 | 2010-01-27 | ブラザー工業株式会社 | 通信装置及び通信システム |
JP4291664B2 (ja) * | 2003-10-14 | 2009-07-08 | 株式会社日立製作所 | 通信バッファ予約機能を備えるストレージ装置およびシステム |
JP2005267502A (ja) | 2004-03-22 | 2005-09-29 | Hitachi Ltd | データ転送用スイッチ |
EP1746510A4 (en) * | 2004-04-28 | 2008-08-27 | Matsushita Electric Ind Co Ltd | NONVOLATILE STORAGE DEVICE AND DATA WRITING METHOD |
US7809009B2 (en) * | 2006-02-21 | 2010-10-05 | Cisco Technology, Inc. | Pipelined packet switching and queuing architecture |
WO2007097007A1 (ja) * | 2006-02-24 | 2007-08-30 | Fujitsu Limited | メモリ制御装置およびメモリ制御方法 |
US7536584B2 (en) | 2006-06-08 | 2009-05-19 | Dot Hill Systems Corporation | Fault-isolating SAS expander |
EP2052326B1 (en) | 2006-06-08 | 2012-08-15 | Dot Hill Systems Corporation | Fault-isolating sas expander |
JP4881887B2 (ja) * | 2008-01-30 | 2012-02-22 | アラクサラネットワークス株式会社 | トラフィックシェーピング機能および装置 |
US8045472B2 (en) * | 2008-12-29 | 2011-10-25 | Apple Inc. | Credit management when resource granularity is larger than credit granularity |
US8180955B2 (en) * | 2009-05-06 | 2012-05-15 | Via Telecom, Inc. | Computing systems and methods for managing flash memory device |
JP4874368B2 (ja) | 2009-06-22 | 2012-02-15 | 株式会社日立製作所 | フラッシュメモリを用いたストレージシステムの管理方法及び計算機 |
US9426083B2 (en) * | 2009-09-29 | 2016-08-23 | Hewlett Packard Enterprise Development Lp | Consistency checking for credit-based control of data communications |
US8856399B2 (en) * | 2010-08-17 | 2014-10-07 | Pmc Sierra Israel Ltd. | System and method for determining non-fragmentation for communication of packets |
-
2011
- 2011-03-14 JP JP2011055669A patent/JP5349515B2/ja not_active Expired - Fee Related
- 2011-10-31 US US13/285,347 patent/US8904065B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US8904065B2 (en) | 2014-12-02 |
JP2012190415A (ja) | 2012-10-04 |
US20120239833A1 (en) | 2012-09-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5349515B2 (ja) | バッファ管理装置、バッファ管理方法及び記憶装置 | |
JP5551512B2 (ja) | 通信制御装置、データ通信方法及びプログラム | |
JP4356765B2 (ja) | 情報処理装置および方法、並びにプログラム | |
KR100619806B1 (ko) | 디스크 콘트롤러 메모리에 접속을 중개하기 위한 중개방법및 시스템 | |
US11036659B2 (en) | Memory system for receiving communication information from external device via virtual channels and control method of memory system | |
JP5330513B2 (ja) | 調停装置、調停システム、調停方法、半導体集積回路、及び画像処理装置 | |
JP6487142B2 (ja) | 格納装置、フラッシュメモリ及び格納装置の動作方法 | |
US9471521B2 (en) | Communication system for interfacing a plurality of transmission circuits with an interconnection network, and corresponding integrated circuit | |
WO2013128494A1 (en) | Storage system and data transfer control method | |
US7165124B2 (en) | Data transfer control system, electronic instrument, program, and data transfer control method | |
US9798492B2 (en) | Semiconductor device including a plurality of function blocks | |
CN114253461A (zh) | 混合通道存储设备 | |
CN114253462A (zh) | 提供混合通道存储设备的方法 | |
US9910812B2 (en) | Initiating multiple data transactions on a system bus | |
CN113485643B (zh) | 用于数据存取的方法及数据写入的控制器 | |
CN105740713B (zh) | 一种基于优先级的tpm读写控制方法 | |
KR102334473B1 (ko) | 적응형 딥러닝 가속 장치 및 방법 | |
US20040230734A1 (en) | Data transfer control system, electronic instrument, and data transfer control method | |
US8713205B2 (en) | Data transfer device and data transfer method | |
JP6395203B2 (ja) | データ制御システム、データ制御方法およびデータ制御用プログラム | |
US20080104286A1 (en) | Data transfer apparatus and data transfer method | |
JP4862593B2 (ja) | データ転送装置及び画像形成装置 | |
KR102438319B1 (ko) | 공통 메모리 인터페이스 장치 및 방법 | |
JP2007011884A (ja) | データ転送装置 | |
CN115017093A (zh) | 一种片上外部总线通信的方法以及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20130304 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20130304 |
|
A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20130422 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130430 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130701 |
|
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: 20130723 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130820 |
|
LAPS | Cancellation because of no payment of annual fees |