JP5287301B2 - ディスクリプタ転送装置、i/oコントローラ、及びディスクリプタ転送方法 - Google Patents
ディスクリプタ転送装置、i/oコントローラ、及びディスクリプタ転送方法 Download PDFInfo
- Publication number
- JP5287301B2 JP5287301B2 JP2009019030A JP2009019030A JP5287301B2 JP 5287301 B2 JP5287301 B2 JP 5287301B2 JP 2009019030 A JP2009019030 A JP 2009019030A JP 2009019030 A JP2009019030 A JP 2009019030A JP 5287301 B2 JP5287301 B2 JP 5287301B2
- Authority
- JP
- Japan
- Prior art keywords
- descriptor
- controller
- read
- main memory
- transfer
- 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.)
- Active
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/10—Program control for peripheral devices
-
- 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/10—Program control for peripheral devices
- G06F13/12—Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
- G06F13/124—Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine
-
- 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
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Bus Control (AREA)
- Computer And Data Communications (AREA)
Description
更に、本ディスクリプタ転送装置、本I/Oコントローラ、及び本ディスクリプタ転送方法によれば、予め定められたフラグを含む先頭のディスクリプタを記憶手段から読み出してI/Oコントローラに対して転送し、I/Oコントローラが転送された先頭のディスクリプタに含まれるフラグに従って先頭のディスクリプタに基づく実行指示データを転送している間に、先頭のディスクリプタの後続のディスクリプタをメインメモリから読み出すことにより、メモリリードにかかるレイテンシを隠蔽することができる。
2 プロセッサ
3 I/Oコントローラ
4 I/Oデバイス
5 メインメモリ
11 ディスクリプタ読み出し部
12 ディスクリプタ格納部
31 実行指示部
51 ディスクリプタ格納領域
Claims (10)
- I/Oデバイスに処理の実行を指示するI/Oコントローラに対して、前記実行すべき処理に関する情報を示すディスクリプタを転送するディスクリプタ転送装置であって、
前記ディスクリプタを記憶するメインメモリと、
前記ディスクリプタを記憶する記憶手段と、
プロセッサからのディスクリプタ読み出し元に関する指示に従って、前記メインメモリ又は前記記憶手段から、指示されたディスクリプタを、格納位置を示すポインタに基づいて読み出すディスクリプタ読み出し手段と、
前記読み出されたディスクリプタを前記I/Oコントローラに対して転送するディスクリプタ転送手段とを備え、
前記ディスクリプタ読み出し手段が、予め定められたフラグを含む先頭のディスクリプタを前記記憶手段から読み出して前記I/Oコントローラに対して転送し、前記I/Oコントローラが転送された前記先頭のディスクリプタに含まれる前記フラグに従って前記先頭のディスクリプタに基づく実行指示データを転送している間に、前記先頭のディスクリプタの後続のディスクリプタを前記メインメモリから読み出す
ことを特徴とするディスクリプタ転送装置。 - 前記メインメモリに記憶される前記ディスクリプタが、前記ディスクリプタ読み出し元を示す読み出し元情報を有し、
前記ディスクリプタ読み出し手段が、前記メインメモリから読み出したディスクリプタが有する読み出し元情報に基づいて、該ディスクリプタを前記I/Oコントローラに対して転送するか、又は、前記記憶手段へのディスクリプタの書き込みを待ち合わせた上で該記憶手段へ書き込まれたディスクリプタを前記I/Oコントローラに対して転送するかを判断する
ことを特徴とする請求項1記載のディスクリプタ転送装置。 - 前記メインメモリ又は前記記憶手段に記憶される前記ディスクリプタが、自ディスクリプタの次に読み出し対象となるディスクリプタへのポインタを有し、
前記ディスクリプタ読み出し手段が、前記ディスクリプタが有するポインタに基づいて、前記ディスクリプタ読み出し元を判断する
ことを特徴とする請求項1記載のディスクリプタ転送装置。 - I/Oデバイスに処理の実行を指示するI/Oコントローラであって、
実行すべき処理の内容を示すディスクリプタをI/Oコントローラに転送するディスクリプタ転送装置と、
前記ディスクリプタ転送装置から転送されたディスクリプタに基づいて、前記I/Oデバイスに処理の実行を指示する実行指示手段とを備え、
前記ディスクリプタ転送装置が、
前記ディスクリプタを記憶するメインメモリと、
前記ディスクリプタを記憶する記憶手段と、
プロセッサからのディスクリプタ読み出し元に関する指示に従って、前記ディスクリプタを記憶するメインメモリ又は前記記憶手段から、指示されたディスクリプタを、格納位置を示すポインタに基づいて読み出すディスクリプタ読み出し手段と、
前記読み出されたディスクリプタを前記I/Oコントローラに対して転送するディスクリプタ転送手段とを備え、
前記ディスクリプタ読み出し手段が、予め定められたフラグを含む先頭のディスクリプタを前記記憶手段から読み出して前記I/Oコントローラに対して転送し、前記I/Oコントローラが転送された前記先頭のディスクリプタに含まれる前記フラグに従って前記先頭のディスクリプタに基づく実行指示データを転送している間に、前記先頭のディスクリプタの後続のディスクリプタを前記メインメモリから読み出す
ことを特徴とするI/Oコントローラ。 - 前記メインメモリに記憶される前記ディスクリプタが、前記ディスクリプタ読み出し元を示す読み出し元情報を有し、
前記ディスクリプタ読み出し手段が、前記メインメモリから読み出したディスクリプタが有する読み出し元情報に基づいて、該ディスクリプタを前記I/Oコントローラに対して転送するか、又は、前記記憶手段へのディスクリプタの書き込みを待ち合わせた上で該記憶手段へ書き込まれたディスクリプタを前記I/Oコントローラに対して転送するかを判断する
ことを特徴とする請求項4記載のI/Oコントローラ。 - 前記I/Oデバイスによる前記ディスクリプタが示す処理の実行が完了したことを示す情報を前記メインメモリに設定する手段を備える
ことを特徴とする請求項5記載のI/Oコントローラ。 - I/Oデバイスに処理の実行を指示するI/Oコントローラに対して、前記実行すべき処理の内容を示すディスクリプタを転送するディスクリプタ転送装置におけるディスクリプタ転送方法であって、
プロセッサが、メインメモリ及び記憶手段に前記ディスクリプタを記憶するとともに、前記ディスクリプタ転送装置に対して、ディスクリプタ読み出し元を指示し、
前記ディスクリプタ転送装置が、前記プロセッサからの前記指示に従って、前記メインメモリ又は前記記憶手段から、前記ディスクリプタを、格納位置を示すポインタに基づいて読み出し、前記読み出されたディスクリプタを前記I/Oコントローラに対して転送する場合において、予め定められたフラグを含む先頭のディスクリプタを前記記憶手段から読み出して前記I/Oコントローラに対して転送し、前記I/Oコントローラが転送された前記先頭のディスクリプタに含まれる前記フラグに従って前記先頭のディスクリプタに基づく実行指示データを転送している間に、前記先頭のディスクリプタの後続のディスクリプタを前記メインメモリから読み出す
ことを特徴とするディスクリプタ転送方法。 - 前記メインメモリに記憶される前記ディスクリプタが、前記ディスクリプタ読み出し元を示す読み出し元情報を有し、
前記ディスクリプタ転送装置が、前記メインメモリから読み出したディスクリプタが有する読み出し元情報に基づいて、該ディスクリプタを前記I/Oコントローラに対して転送するか、又は、前記記憶手段へのディスクリプタの書き込みを待ち合わせた上で該記憶手段へ書き込まれたディスクリプタを前記I/Oコントローラに対して転送するかを判断する
ことを特徴とする請求項7記載のディスクリプタ転送方法。 - 前記I/Oコントローラが、前記I/Oデバイスによる前記ディスクリプタが示す処理の実行が完了したことを示す情報を前記メインメモリに設定する
ことを特徴とする請求項8記載のディスクリプタ転送方法。 - 前記メインメモリ又は前記記憶手段に記憶される前記ディスクリプタが、自ディスクリプタの次に読み出し対象となるディスクリプタへのポインタを有し、
前記ディスクリプタ転送装置が、前記ディスクリプタが有するポインタに基づいて、前記ディスクリプタ読み出し元を判断する
ことを特徴とする請求項7記載のディスクリプタ転送方法。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009019030A JP5287301B2 (ja) | 2009-01-30 | 2009-01-30 | ディスクリプタ転送装置、i/oコントローラ、及びディスクリプタ転送方法 |
US12/632,368 US8589601B2 (en) | 2009-01-30 | 2009-12-07 | I/O controller and descriptor transfer method |
EP09178758A EP2214103B1 (en) | 2009-01-30 | 2009-12-10 | I/O controller and descriptor transfer method |
KR1020090126649A KR101112666B1 (ko) | 2009-01-30 | 2009-12-18 | 디스크립터 전송 장치, i/o 컨트롤러, 및 디스크립터 전송 방법 |
CN2010100025848A CN101794262B (zh) | 2009-01-30 | 2010-01-19 | I/o控制器和描述符传输方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009019030A JP5287301B2 (ja) | 2009-01-30 | 2009-01-30 | ディスクリプタ転送装置、i/oコントローラ、及びディスクリプタ転送方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010176442A JP2010176442A (ja) | 2010-08-12 |
JP5287301B2 true JP5287301B2 (ja) | 2013-09-11 |
Family
ID=41800579
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009019030A Active JP5287301B2 (ja) | 2009-01-30 | 2009-01-30 | ディスクリプタ転送装置、i/oコントローラ、及びディスクリプタ転送方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US8589601B2 (ja) |
EP (1) | EP2214103B1 (ja) |
JP (1) | JP5287301B2 (ja) |
KR (1) | KR101112666B1 (ja) |
CN (1) | CN101794262B (ja) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW201339842A (zh) * | 2012-03-20 | 2013-10-01 | Copystar Backup & Storage Corp | 協同式匯流排仲裁多工架構及依該架構所進行之資料存取仲裁方法 |
US9361231B2 (en) * | 2014-01-15 | 2016-06-07 | International Business Machines Corporation | Implicit I/O send on cache operations |
KR102180972B1 (ko) * | 2014-04-23 | 2020-11-20 | 에스케이하이닉스 주식회사 | 메모리 컨트롤 유닛 및 그것을 포함하는 데이터 저장 장치 |
US9697136B2 (en) * | 2014-09-23 | 2017-07-04 | Arm Limited | Descriptor ring management |
US9977619B2 (en) * | 2015-11-06 | 2018-05-22 | Vivante Corporation | Transfer descriptor for memory access commands |
KR102697889B1 (ko) * | 2016-09-21 | 2024-08-22 | 에스케이하이닉스 주식회사 | 데이터 저장 장치 및 그것의 동작 방법 |
US11741779B2 (en) | 2019-11-27 | 2023-08-29 | Playtech Software Limited | System and method for executing a remote interactive live game |
JP7476733B2 (ja) * | 2020-09-07 | 2024-05-01 | オムロン株式会社 | 通信制御機器および通信制御機器の制御方法 |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01237864A (ja) * | 1988-03-18 | 1989-09-22 | Fujitsu Ltd | Dma転送制御装置 |
JPH0696007A (ja) | 1992-09-17 | 1994-04-08 | Fujitsu Ltd | Dma転送方式 |
DE69614291T2 (de) * | 1995-03-17 | 2001-12-06 | Lsi Logic Corp., Fort Collins | (n+i) Ein/Ausgabekanälesteuerung, mit (n) Datenverwaltern, in einer homogenen Software-Programmierbetriebsumgebung |
JPH09319698A (ja) | 1996-06-03 | 1997-12-12 | Fujitsu Ltd | ダイレクト・メモリ・アクセス転送方式 |
US6202107B1 (en) * | 1998-11-19 | 2001-03-13 | Sun Microsystems, Inc. | Host controller interface descriptor fetching unit |
US6401201B2 (en) * | 1998-12-31 | 2002-06-04 | Intel Corporation | Arrangements offering firmware support for different input/output (I/O) types |
US6735642B2 (en) * | 2000-06-02 | 2004-05-11 | Mellanox Technologies Ltd. | DMA doorbell |
US6874039B2 (en) * | 2000-09-08 | 2005-03-29 | Intel Corporation | Method and apparatus for distributed direct memory access for systems on chip |
US6785751B1 (en) * | 2000-09-19 | 2004-08-31 | Intel Corporation | Method and apparatus for minimizing bus contention for I/O controller write operations |
US6888792B2 (en) * | 2000-12-07 | 2005-05-03 | Intel Corporation | Technique to provide automatic failover for channel-based communications |
US8051212B2 (en) * | 2001-04-11 | 2011-11-01 | Mellanox Technologies Ltd. | Network interface adapter with shared data send resources |
DE10234990B4 (de) * | 2002-07-31 | 2007-03-29 | Advanced Micro Devices, Inc., Sunnyvale | Hostcontroller, Verfahren zum Betreiben, zugehöriges Southbridgebauelement und Computersystem zur Steuerung der Ersetzung im voraus geholter Deskriptoren in einem Cache |
US7287101B2 (en) * | 2003-08-05 | 2007-10-23 | Intel Corporation | Direct memory access using memory descriptor list |
US7653754B2 (en) * | 2004-01-05 | 2010-01-26 | Mellanox Technologies Ltd. | Method, system and protocol that enable unrestricted user-level access to a network interface adapter |
JP4373255B2 (ja) * | 2004-03-23 | 2009-11-25 | 富士通株式会社 | ダイレクトメモリアクセス制御装置および方法 |
US20050289253A1 (en) * | 2004-06-24 | 2005-12-29 | Edirisooriya Samantha J | Apparatus and method for a multi-function direct memory access core |
JP2006259898A (ja) * | 2005-03-15 | 2006-09-28 | Toshiba Corp | I/oコントローラ、信号処理システム、およびデータ転送方法 |
JP4723334B2 (ja) * | 2005-09-21 | 2011-07-13 | ルネサスエレクトロニクス株式会社 | Dma転送システム |
US7587663B2 (en) * | 2006-05-22 | 2009-09-08 | Intel Corporation | Fault detection using redundant virtual machines |
ES2350130B1 (es) * | 2008-02-22 | 2011-09-14 | Figueras International Seating, S.L. | Instalacion de butacas ocultables bajo el suelo. |
-
2009
- 2009-01-30 JP JP2009019030A patent/JP5287301B2/ja active Active
- 2009-12-07 US US12/632,368 patent/US8589601B2/en active Active
- 2009-12-10 EP EP09178758A patent/EP2214103B1/en active Active
- 2009-12-18 KR KR1020090126649A patent/KR101112666B1/ko active IP Right Grant
-
2010
- 2010-01-19 CN CN2010100025848A patent/CN101794262B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
EP2214103B1 (en) | 2012-06-20 |
CN101794262A (zh) | 2010-08-04 |
JP2010176442A (ja) | 2010-08-12 |
KR20100088523A (ko) | 2010-08-09 |
CN101794262B (zh) | 2012-09-05 |
US20100198998A1 (en) | 2010-08-05 |
US8589601B2 (en) | 2013-11-19 |
EP2214103A1 (en) | 2010-08-04 |
KR101112666B1 (ko) | 2012-02-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5287301B2 (ja) | ディスクリプタ転送装置、i/oコントローラ、及びディスクリプタ転送方法 | |
US20070162642A1 (en) | A dma controller with multiple intra-channel software request support | |
KR100708128B1 (ko) | 낸드 플래시 메모리 제어 장치 및 방법 | |
JP2002541693A5 (ja) | ||
JPH06236341A (ja) | 入出力記憶装置への直接メモリアクセスを行う装置及び方法 | |
EP2054800A2 (en) | Flash memory access circuit | |
JP2006113689A (ja) | バスブリッジ装置およびデータ転送方法 | |
JP2001229115A (ja) | Atapiコマンド処理方式 | |
JP5583893B2 (ja) | 演算処理装置及び演算処理装置の制御方法 | |
WO2006134804A1 (ja) | 外部デバイスアクセス装置 | |
JP2010146084A (ja) | キャッシュメモリ制御部を備えるデータ処理装置 | |
WO2009098737A1 (ja) | 外部デバイスアクセス装置、その制御方法及びシステムlsi | |
JP4536189B2 (ja) | Dma転送装置及びdma転送システム | |
US20080209085A1 (en) | Semiconductor device and dma transfer method | |
JP2011070259A (ja) | データ転送装置及びデータ転送方法 | |
JP4431492B2 (ja) | 複数のコヒーレンシー・グラニュールをサポートするデータ転送ユニット | |
CN107025190B (zh) | 系统及其操作方法 | |
JP7003752B2 (ja) | データ転送装置、データ転送方法、プログラム | |
JP2012014436A (ja) | ダイレクトメモリアクセス制御装置及び方法 | |
JP2000040057A (ja) | 計算機システム、バッファ制御装置及び転送方法 | |
JP6992616B2 (ja) | データ転送装置、データ転送方法、プログラム | |
JP6940283B2 (ja) | Dma転送制御装置、dma転送制御方法、及び、dma転送制御プログラム | |
JP2011118744A (ja) | 情報処理装置 | |
JPH06149669A (ja) | キャッシュデータ転送方式およびキャッシュデータ転送装置 | |
JP2007048090A (ja) | シーケンシャルromインターフェース対応nand型フラッシュメモリーデバイス及びそのコントローラ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20111006 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120810 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120904 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20121105 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130219 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130416 |
|
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: 20130507 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130520 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5287301 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |