JP4779010B2 - バッファリング装置およびバッファリング方法 - Google Patents
バッファリング装置およびバッファリング方法 Download PDFInfo
- Publication number
- JP4779010B2 JP4779010B2 JP2008501569A JP2008501569A JP4779010B2 JP 4779010 B2 JP4779010 B2 JP 4779010B2 JP 2008501569 A JP2008501569 A JP 2008501569A JP 2008501569 A JP2008501569 A JP 2008501569A JP 4779010 B2 JP4779010 B2 JP 4779010B2
- Authority
- JP
- Japan
- Prior art keywords
- request
- processing
- waiting
- wait
- queue
- 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
- 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/1605—Handling requests for interconnection or transfer for access to memory bus based on arbitration
- G06F13/1642—Handling requests for interconnection or transfer for access to memory bus based on arbitration with request queuing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
- H04L49/901—Buffering arrangements using storage descriptor, e.g. read or write pointers
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Information Transfer Systems (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Description
110 書込部
120 バッファ
130 読出部
140 順序制御部
200 システムコントローラ
300 CPU
400 メモリ
Claims (9)
- 順序保証が必要な処理および順序保証が不要な処理のいずれかの処理に用いられるリクエストをバッファリングするバッファリング装置であって、
処理を待機する複数のリクエストと、前記複数のリクエストの各々について先行する他のリクエストの処理完了を待機する必要があるか否かを示す待ち合わせフラグとを対応付けて記憶する記憶手段と、
前記記憶手段から処理対象のリクエストを1つずつ読み出す読出手段と、
前記記憶手段に記憶された各リクエストについて前記記憶手段に記憶された先行する他のリクエストの処理が完了するまで前記読出手段による読み出しを待機すべきか否かを各リクエストに対応する待ち合わせフラグに設定し、各リクエストに対応付けられた待ち合わせフラグに応じて、先行する他のリクエストの処理完了を待機する必要がないリクエストを前記読出手段によって読み出させる制御手段とを有し、
前記記憶手段は、
複数のキューを備え、各キューにそれぞれ1つのリクエストと、当該1つのリクエストを記憶するキュー以外の複数のキューそれぞれに対応する複数の待ち合わせフラグとを対応付けて記憶し、
前記制御手段は、
1つのリクエストが、当該1つのリクエストを記憶するキューに含まれる複数の待ち合わせフラグの各々に対応するキューに格納された他のリクエストの処理完了を待機する必要があるか否かを、前記1つのリクエストを記憶するキューに含まれる複数の待ち合わせフラグそれぞれに設定することを特徴とするバッファリング装置。 - 前記制御手段は、
リクエストが順序保証が必要な処理に用いられるか否かに応じて待ち合わせフラグを設定することを特徴とする請求項1記載のバッファリング装置。 - 前記制御手段は、
順序保証が必要な処理に用いられるリクエストの待ち合わせフラグを、当該リクエストよりも先に前記記憶手段に記憶されたリクエストの処理完了を待機するように設定することを特徴とする請求項2記載のバッファリング装置。 - 前記制御手段は、
順序保証が不要な処理に用いられるリクエストの待ち合わせフラグを、前記読出手段によって読み出し中のリクエストの読み出し完了のみを待機するように設定することを特徴とする請求項2記載のバッファリング装置。 - 前記記憶手段にリクエストを1つずつ書き込む書込手段をさらに有し、
前記制御手段は、
前記書込手段がリクエストを書き込む際に、待ち合わせフラグをリクエストに付加させた上で書き込ませることを特徴とする請求項1記載のバッファリング装置。 - 前記記憶手段はさらに、
各リクエストの処理の状態を示すステートをリクエストごとに対応付けて記憶し、
前記制御手段は、
前記記憶手段に記憶されたリクエストそれぞれについて読み出し待機、応答待機、および処理完了のいずれかのステートを決定し、前記記憶手段に記憶されたリクエストのステートが遷移するとステートの遷移を待ち合わせフラグに反映することを特徴とする請求項1記載のバッファリング装置。 - 前記制御手段は、
いずれかのリクエストのステートが応答待機から処理完了に遷移した場合、順序保証が必要な処理に用いられるリクエストの待ち合わせフラグにおいて、ステートが遷移したリクエストの処理完了を待機不要に変更することを特徴とする請求項6記載のバッファリング装置。 - 前記制御手段は、
いずれかのリクエストのステートが読み出し待機から応答待機に遷移した場合、順序保証が不要な処理に用いられるリクエストの待ち合わせフラグにおいて、ステートが遷移したリクエストの処理完了を待機不要に変更することを特徴とする請求項6記載のバッファリング装置。 - 順序保証が必要な処理および順序保証が不要な処理のいずれかの処理に用いられるリクエストをバッファリングするバッファリング方法であって、
処理を待機する複数のリクエストと、前記複数のリクエストの各々について先行する他のリクエストの処理完了を待機する必要があるか否かを示す待ち合わせフラグとを対応付けて複数のキューを備えた記憶部に記憶する記憶工程と、
前記記憶工程にて記憶された各リクエストについて、先行する他のリクエストの処理が完了するまで読み出しを待機すべきか否かを各リクエストに対応する待ち合わせフラグに設定する設定工程と、
前記設定工程にて各リクエストに対応付けて設定された待ち合わせフラグに応じて、先行する他のリクエストの処理完了を待機する必要がないリクエストを読み出すように読出順序を制御する制御工程と、
前記制御工程における読出順序に従って処理対象のリクエストを1つずつ読み出す読出工程とを有し、
前記記憶工程は、
前記記憶部の各キューにそれぞれ1つのリクエストと、当該1つのリクエストを記憶するキュー以外の複数のキューそれぞれに対応する複数の待ち合わせフラグとを対応付けて記憶し、
前記設定工程は、
1つのリクエストが、当該1つのリクエストを記憶するキューに含まれる複数の待ち合わせフラグの各々に対応するキューに格納された他のリクエストの処理完了を待機する必要があるか否かを、前記1つのリクエストを記憶するキューに含まれる複数の待ち合わせフラグそれぞれに設定することを特徴とするバッファリング方法。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2006/303587 WO2007097017A1 (ja) | 2006-02-27 | 2006-02-27 | バッファリング装置およびバッファリング方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2007097017A1 JPWO2007097017A1 (ja) | 2009-07-09 |
JP4779010B2 true JP4779010B2 (ja) | 2011-09-21 |
Family
ID=38437077
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008501569A Expired - Fee Related JP4779010B2 (ja) | 2006-02-27 | 2006-02-27 | バッファリング装置およびバッファリング方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US8533368B2 (ja) |
JP (1) | JP4779010B2 (ja) |
WO (1) | WO2007097017A1 (ja) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5239769B2 (ja) * | 2008-11-14 | 2013-07-17 | 富士通株式会社 | リクエスト順序制御システム、リクエスト順序制御方法およびリクエスト順序制御プログラム |
CN102929562B (zh) * | 2012-10-09 | 2015-05-06 | 无锡江南计算技术研究所 | 基于识别标识的可扩展重排序方法 |
US9594713B2 (en) * | 2014-09-12 | 2017-03-14 | Qualcomm Incorporated | Bridging strongly ordered write transactions to devices in weakly ordered domains, and related apparatuses, methods, and computer-readable media |
WO2021193542A1 (ja) * | 2020-03-27 | 2021-09-30 | 日本電気株式会社 | 通信システム |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04190435A (ja) * | 1990-11-26 | 1992-07-08 | Hitachi Ltd | マルチプロセッサシステムのメモリアクセス順序保証方式 |
JP2000099328A (ja) * | 1998-09-25 | 2000-04-07 | Nec Corp | プロセッサ及びその実行制御方法 |
JP2000181891A (ja) * | 1998-12-18 | 2000-06-30 | Hitachi Ltd | 共有メモリアクセス順序保証方式 |
JP2001051845A (ja) * | 1999-08-12 | 2001-02-23 | Hitachi Ltd | アウトオブオーダー実行方式 |
JP2002108703A (ja) * | 2000-10-02 | 2002-04-12 | Fujitsu Ltd | キャッシュ制御装置及びプロセッサ |
JP2003242097A (ja) * | 2002-02-15 | 2003-08-29 | Hitachi Ltd | クロスコール機能を備えるディスク制御装置 |
WO2004031944A1 (ja) * | 2002-10-04 | 2004-04-15 | Fujitsu Limited | プロセッサ及び命令制御方法 |
JP2006040143A (ja) * | 2004-07-29 | 2006-02-09 | Fujitsu Ltd | 情報処理装置及びストア命令制御方法 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5778438A (en) * | 1995-12-06 | 1998-07-07 | Intel Corporation | Method and apparatus for maintaining cache coherency in a computer system with a highly pipelined bus and multiple conflicting snoop requests |
JP3110334B2 (ja) | 1997-01-23 | 2000-11-20 | 甲府日本電気株式会社 | アービトレーション制御装置 |
JP3558001B2 (ja) | 2000-05-24 | 2004-08-25 | 日本電気株式会社 | 命令バッファ及びバッファキュー制御 |
US20050125634A1 (en) * | 2002-10-04 | 2005-06-09 | Fujitsu Limited | Processor and instruction control method |
US20060129764A1 (en) * | 2004-12-09 | 2006-06-15 | International Business Machines Corporation | Methods and apparatus for storing a command |
US7284102B2 (en) * | 2005-02-09 | 2007-10-16 | International Business Machines Corporation | System and method of re-ordering store operations within a processor |
US7457905B2 (en) * | 2005-08-29 | 2008-11-25 | Lsi Corporation | Method for request transaction ordering in OCP bus to AXI bus bridge design |
US8115773B2 (en) * | 2007-06-07 | 2012-02-14 | Apple Inc. | Serializing command streams for graphics processors |
-
2006
- 2006-02-27 JP JP2008501569A patent/JP4779010B2/ja not_active Expired - Fee Related
- 2006-02-27 WO PCT/JP2006/303587 patent/WO2007097017A1/ja active Application Filing
-
2008
- 2008-08-21 US US12/230,026 patent/US8533368B2/en not_active Expired - Fee Related
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04190435A (ja) * | 1990-11-26 | 1992-07-08 | Hitachi Ltd | マルチプロセッサシステムのメモリアクセス順序保証方式 |
JP2000099328A (ja) * | 1998-09-25 | 2000-04-07 | Nec Corp | プロセッサ及びその実行制御方法 |
JP2000181891A (ja) * | 1998-12-18 | 2000-06-30 | Hitachi Ltd | 共有メモリアクセス順序保証方式 |
JP2001051845A (ja) * | 1999-08-12 | 2001-02-23 | Hitachi Ltd | アウトオブオーダー実行方式 |
JP2002108703A (ja) * | 2000-10-02 | 2002-04-12 | Fujitsu Ltd | キャッシュ制御装置及びプロセッサ |
JP2003242097A (ja) * | 2002-02-15 | 2003-08-29 | Hitachi Ltd | クロスコール機能を備えるディスク制御装置 |
WO2004031944A1 (ja) * | 2002-10-04 | 2004-04-15 | Fujitsu Limited | プロセッサ及び命令制御方法 |
JP2006040143A (ja) * | 2004-07-29 | 2006-02-09 | Fujitsu Ltd | 情報処理装置及びストア命令制御方法 |
Also Published As
Publication number | Publication date |
---|---|
US8533368B2 (en) | 2013-09-10 |
WO2007097017A1 (ja) | 2007-08-30 |
JPWO2007097017A1 (ja) | 2009-07-09 |
US20080320185A1 (en) | 2008-12-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100708128B1 (ko) | 낸드 플래시 메모리 제어 장치 및 방법 | |
JPWO2008155827A1 (ja) | キャッシュ制御装置及び制御方法 | |
JP5287301B2 (ja) | ディスクリプタ転送装置、i/oコントローラ、及びディスクリプタ転送方法 | |
JP4779010B2 (ja) | バッファリング装置およびバッファリング方法 | |
JP4688822B2 (ja) | 外部デバイスアクセス装置およびシステムlsi | |
JP4373255B2 (ja) | ダイレクトメモリアクセス制御装置および方法 | |
JP5217786B2 (ja) | リクエスト調停装置及びリクエスト調停方法 | |
JP4642531B2 (ja) | データ要求のアービトレーション | |
WO2009098737A1 (ja) | 外部デバイスアクセス装置、その制御方法及びシステムlsi | |
US20080147906A1 (en) | DMA Transferring System, DMA Controller, and DMA Transferring Method | |
JP2007047968A (ja) | マルチプロセッサシステム | |
JP2006313479A (ja) | 半導体集積回路装置及びデータ転送方法 | |
US20080209085A1 (en) | Semiconductor device and dma transfer method | |
JPH11232213A (ja) | 入出力装置におけるデータ転送方式 | |
US11010318B2 (en) | Method and apparatus for efficient and flexible direct memory access | |
JP4631442B2 (ja) | プロセッサ | |
JP2005107873A (ja) | 半導体集積回路 | |
JP5000858B2 (ja) | データ処理装置 | |
JP2000227895A (ja) | 画像データ転送装置および画像データ転送方法 | |
JP2007109199A (ja) | バッファ装置、、バッファ装置の制御方法、情報処理装置 | |
JP2018120448A (ja) | 演算処理装置および情報処理システム | |
JP6992616B2 (ja) | データ転送装置、データ転送方法、プログラム | |
JP2007087244A (ja) | コプロセッサ及びコンピュータシステム | |
JP4509946B2 (ja) | 割り込み優先順位設定回路 | |
JP3467188B2 (ja) | 多重化バスの順序保証システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20101207 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110207 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110329 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110526 |
|
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: 20110628 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20110704 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140708 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |