JP5058116B2 - ストリーミングidメソッドによるdmac発行メカニズム - Google Patents
ストリーミングidメソッドによるdmac発行メカニズム Download PDFInfo
- Publication number
- JP5058116B2 JP5058116B2 JP2008260019A JP2008260019A JP5058116B2 JP 5058116 B2 JP5058116 B2 JP 5058116B2 JP 2008260019 A JP2008260019 A JP 2008260019A JP 2008260019 A JP2008260019 A JP 2008260019A JP 5058116 B2 JP5058116 B2 JP 5058116B2
- Authority
- JP
- Japan
- Prior art keywords
- group
- slot
- command
- valid
- processor
- 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/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/14—Handling requests for interconnection or transfer
- G06F13/36—Handling requests for interconnection or transfer for access to common bus or bus system
- G06F13/362—Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control
- G06F13/3625—Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control using a time dependent access
Description
ラウンドロビンストリーミングIDグループでは、例えば、ストリーミングIDグループの選択は、ラウンドロビン式で行われる。
上述した発行ポリシーでは、コマンドの新旧に代えて、コマンドのDMACへの入力順を要素として用いることもできる。
この方法において、前記キュー特性を更新するステップでは、最も古い有効コマンドが含まれていたグループに対するポインタを次のペンディング状態のバスリクエストへと移動させることもできる。例えば、グループを選択するためにラウンドロビン調停スキームを用い、このラウンドロビン調停において、最も古い有効コマンドが含まれていたグループに対するポインタを次のペンディング状態のバスリクエストへと移動すること、つまり、最も古い有効コマンドが含まれていたグループから次のペンディング状態のバスリクエストへと処理を進めることも可能である。
なお、オンチップメモリとしては、キャッシュメモリ、ローカルストア、メモリーマップドI/O(MMIO)が挙げられる。
従って、メモリアクセス発行タイミングをスロット単位でコントロールすることにより、効率を損うことを防ぐことができる。
以下の説明において、本発明の理解を深めるために、種々の詳細が示されている。しかしながら、当業者であれば、本発明は、このような特定の詳細に束縛されることなく実施できることが理解されよう。他の例において、周知のエレメントが図示されているが、これらは本発明を不明瞭にしないよう、必須ではない細部まで示したものである。加えて、多くの場合、ネットワーク通信、電磁信号技術等は当業者にとって周知な範疇のものであり、本発明を完全に理解するに必須でない限りは省略するものとした。
メモリコントローラ122は、双方向メモリバスを実装することで、メモリデバイス124と通信を行う。従って、メモリコントローラ122は、双方向メモリバスを実装し、第10書き込み通信チャンネル186及び第10読み出し通信チャンネル188を通じてバス130に結合されている。また、I/Oコントローラ126は、第11書き込み通信チャンネル190及び第11読み出し通信チャンネル192を通じてバス130に結合されている。
バスへの接続に加えて、他の種々のコンポーネント間においても接続が行われ得る。より詳細には、メモリコントローラ122やI/Oコントローラ126のようなコントローラにおいては、他のデバイスそれぞれへの接続が必要となる。メモリコントローラ122は、第1帯域幅制御通信チャンネル194を通じてメモリデバイス124に結合されている。I/Oコントローラ126は、第2帯域幅制御通信チャンネル196及び第3帯域幅制御通信チャンネル198を通じてI/Oデバイス128に対して結合されている。
101、103 プロセッサ
105 プロセッサ
104、106、108 プロセッサコア
122 メモリコントローラ
124 メモリデバイス
126 コントローラ
128 I/Oデバイス
130 バス
194、196、198 帯域幅制御通信チャンネル
200 コマンドキュー
210 スロットフィールド
230 コマンドフィールド
250 制御レジスタ
252 スロットイネーブルレジスタ
254、256、258 スロット
260、262、264 クォータ
Claims (10)
- DMACが、コマンドの発行を、コマンド発行タイミングを複数のスロットに時分割して制御する方法であって、
前記コマンドは、当該コマンドに割り当てられたストリーミングIDによって複数のグループにグループ化されており、
前記DMACは、前記複数のグループに対して、それぞれストリーミングIDにより機能がイネーブル又はディスエーブルとされるようにスロットの制御を行い、
前記スロットの制御では、
前記複数のスロットのうちから選択スロットを選出し、
前記選択スロット内に含まれるグループに対して、グループ内のコマンドが発行可能である場合に、当該グループが有効であると判定することで、グループの有効性を判定し、
前記選択スロットに有効なグループが存在しない場合には、前記複数のスロットのうちから他のスロットを選出し、
更に、前記DMACは、
少なくとも一つのスロットに有効なグループが存在する場合には、当該有効なグループ内のコマンドのうち最も古いコマンドを選出してコマンドを発行し、
前記最も古いコマンドが含まれるグループに対してグループ特性の更新を行う、方法。 - 前記スロットを選出するステップでは、読み出しスロット又は書き込みスロットが選出される、請求項1記載の方法。
- 前記グループ有効性を判定するステップでは、
各グループが予めプログラムされたクォータに達しているか否かを判定する、請求項1記載の方法。 - 前記グループ特性を更新するステップでは、最も古い有効コマンドが含まれていたグループに対するポインタを次のグループへと移動させる、請求項1記載の方法。
- DMAC内のコマンドの発行を、コマンド発行タイミングを複数のスロットに時分割して制御するするためのコンピュータプログラムであって、
前記コマンドは、当該コマンドに割り当てられたストリーミングIDによって複数のグループにグループ化されており、
前記複数のグループに対して、それぞれストリーミングIDにより機能がイネーブル又はディスエーブルとされるようにスロットの制御を行う処理と、
前記複数のスロットから選択スロットを選出する処理と、
前記選択スロット内に含まれるグループに対して、グループ内のコマンドが発行可能である場合に、当該グループが有効であると判定することで、グループの有効性を判定する処理と、
前記選択スロットに有効なグループが存在しない場合に、前記複数のスロットから他のスロットを選出する処理と、
少なくとも一つのスロットに有効なグループが存在する場合には、当該有効なグループ内のコマンドのうち最も古いコマンドを選出してコマンドを発行する処理と、
前記最も古い有効コマンドが存在するグループのグループ特性を更新する処理と、を前記DMACに実行させるための、コンピュータプログラム。 - 前記スロットを選出する処理は、読み出しスロット又は書き込みスロットを選択するための処理を含む、請求項5記載のコンピュータプログラム。
- 前記グループ有効性を判定する処理は、
各グループが予めプログラムされたクォータに達しているか否かを判定する処理を含む、請求項6記載のコンピュータプログラム。 - DMAC内のコマンドを発行するためのプロセッサであって、前記プロセッサは、コマンド発行タイミングを複数のスロットに時分割して制御するとともに、前記コマンドは、当該コマンドに割り当てられたストリーミングIDによって複数のグループにグループ化されており、
前記複数のグループに対して、それぞれストリーミングIDにより機能がイネーブル又はディスエーブルとされるようにスロットの制御を行う処理と、
前記複数のスロットから選択スロットを選出する処理と、
前記選択スロット内に含まれるグループに対して、グループ内のコマンドが発行可能である場合に、当該グループが有効であると判定することで、グループの有効性を判定する処理と、
前記選択スロットに有効なグループが存在しない場合に、前記複数のスロットから他のスロットを選出する処理と、
少なくとも一つのスロットに有効なグループが存在する場合には、当該有効なグループ内のコマンドのうち最も古いコマンドを選出する処理と、
前記最も古い有効コマンドが存在するグループのグループ特性を更新するための処理と、を実行するプロセッサ。 - 前記スロットを選出する処理には、更に、読み出しスロット又は書き込みスロットを選出する処理が含まれる、請求項8記載のプロセッサ。
- 前記グループ有効性を判定する処理は、更に、
各グループが予めプログラムされたクォータに達しているか否かを判定する処理が含まれる、請求項8記載のプロセッサ。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/902,473 | 2004-07-29 | ||
US10/902,473 US20060026308A1 (en) | 2004-07-29 | 2004-07-29 | DMAC issue mechanism via streaming ID method |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005220770A Division JP4440181B2 (ja) | 2004-07-29 | 2005-07-29 | ストリーミングidメソッドによるdmac発行メカニズム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2009037639A JP2009037639A (ja) | 2009-02-19 |
JP5058116B2 true JP5058116B2 (ja) | 2012-10-24 |
Family
ID=35717681
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005220770A Active JP4440181B2 (ja) | 2004-07-29 | 2005-07-29 | ストリーミングidメソッドによるdmac発行メカニズム |
JP2008260019A Active JP5058116B2 (ja) | 2004-07-29 | 2008-10-06 | ストリーミングidメソッドによるdmac発行メカニズム |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005220770A Active JP4440181B2 (ja) | 2004-07-29 | 2005-07-29 | ストリーミングidメソッドによるdmac発行メカニズム |
Country Status (7)
Country | Link |
---|---|
US (1) | US20060026308A1 (ja) |
EP (1) | EP1704487B1 (ja) |
JP (2) | JP4440181B2 (ja) |
CN (1) | CN100573489C (ja) |
AT (1) | ATE373845T1 (ja) |
DE (1) | DE602005002533T2 (ja) |
WO (1) | WO2006011063A2 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100677511B1 (ko) * | 2005-08-12 | 2007-02-02 | 엘지전자 주식회사 | Bcast서비스 시스템 및 이를 이용한 콘텐츠 전송방법 |
US20080220047A1 (en) * | 2007-03-05 | 2008-09-11 | Sawhney Amarpreet S | Low-swelling biocompatible hydrogels |
CN103533090A (zh) * | 2013-10-23 | 2014-01-22 | 中国科学院声学研究所 | 单个物理网口模拟为多个逻辑网口的映射方法与装置 |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2628079B2 (ja) * | 1988-11-25 | 1997-07-09 | 三菱電機株式会社 | マルチプロセサシステムにおけるダイレクト・メモリ・アクセス制御装置 |
CA2069711C (en) * | 1991-09-18 | 1999-11-30 | Donald Edward Carmon | Multi-media signal processor computer system |
US5475850A (en) * | 1993-06-21 | 1995-12-12 | Intel Corporation | Multistate microprocessor bus arbitration signals |
US5619728A (en) * | 1994-10-20 | 1997-04-08 | Dell Usa, L.P. | Decoupled DMA transfer list storage technique for a peripheral resource controller |
US5826106A (en) * | 1995-05-26 | 1998-10-20 | National Semiconductor Corporation | High performance multifunction direct memory access (DMA) controller |
EP0804033A3 (en) * | 1996-04-26 | 2003-12-10 | Texas Instruments Incorporated | Improvements in or relating to electronic devices |
JPH1040211A (ja) * | 1996-04-30 | 1998-02-13 | Texas Instr Inc <Ti> | パケット化されたデータ通信インタフェース機器内での直接メモリアクセス優先順位を割り当てるための方法ならびにdmaチャンネル回路 |
US6112265A (en) * | 1997-04-07 | 2000-08-29 | Intel Corportion | System for issuing a command to a memory having a reorder module for priority commands and an arbiter tracking address of recently issued command |
JP3602293B2 (ja) * | 1997-04-22 | 2004-12-15 | 株式会社ソニー・コンピュータエンタテインメント | データ転送方法及び装置 |
US7133940B2 (en) * | 1997-10-14 | 2006-11-07 | Alacritech, Inc. | Network interface device employing a DMA command queue |
US6347344B1 (en) * | 1998-10-14 | 2002-02-12 | Hitachi, Ltd. | Integrated multimedia system with local processor, data transfer switch, processing modules, fixed functional unit, data streamer, interface unit and multiplexer, all integrated on multimedia processor |
KR100708096B1 (ko) * | 2000-07-21 | 2007-04-16 | 삼성전자주식회사 | 버스 시스템 및 그 실행 순서 조정방법 |
US6738836B1 (en) * | 2000-08-31 | 2004-05-18 | Hewlett-Packard Development Company, L.P. | Scalable efficient I/O port protocol |
US6874039B2 (en) * | 2000-09-08 | 2005-03-29 | Intel Corporation | Method and apparatus for distributed direct memory access for systems on chip |
JP2002163239A (ja) * | 2000-11-22 | 2002-06-07 | Toshiba Corp | マルチプロセッサシステムおよびその制御方法 |
US7110431B2 (en) * | 2001-03-14 | 2006-09-19 | Mercury Computer Systems, Inc. | Hardware and software for performing computations in a short-code spread-spectrum communications system |
US6981073B2 (en) * | 2001-07-31 | 2005-12-27 | Wis Technologies, Inc. | Multiple channel data bus control for video processing |
US20040073721A1 (en) * | 2002-10-10 | 2004-04-15 | Koninklijke Philips Electronics N.V. | DMA Controller for USB and like applications |
-
2004
- 2004-07-29 US US10/902,473 patent/US20060026308A1/en not_active Abandoned
-
2005
- 2005-07-28 CN CNB2005800023534A patent/CN100573489C/zh active Active
- 2005-07-28 DE DE602005002533T patent/DE602005002533T2/de active Active
- 2005-07-28 WO PCT/IB2005/003353 patent/WO2006011063A2/en active IP Right Grant
- 2005-07-28 AT AT05797447T patent/ATE373845T1/de not_active IP Right Cessation
- 2005-07-28 EP EP05797447A patent/EP1704487B1/en not_active Not-in-force
- 2005-07-29 JP JP2005220770A patent/JP4440181B2/ja active Active
-
2008
- 2008-10-06 JP JP2008260019A patent/JP5058116B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
CN100573489C (zh) | 2009-12-23 |
EP1704487A2 (en) | 2006-09-27 |
WO2006011063A2 (en) | 2006-02-02 |
JP4440181B2 (ja) | 2010-03-24 |
US20060026308A1 (en) | 2006-02-02 |
DE602005002533D1 (de) | 2007-10-31 |
EP1704487B1 (en) | 2007-09-19 |
DE602005002533T2 (de) | 2008-06-26 |
JP2006048691A (ja) | 2006-02-16 |
CN1910562A (zh) | 2007-02-07 |
ATE373845T1 (de) | 2007-10-15 |
JP2009037639A (ja) | 2009-02-19 |
WO2006011063A3 (en) | 2006-06-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3729281B1 (en) | Scheduling memory requests with non-uniform latencies | |
US9141568B2 (en) | Proportional memory operation throttling | |
JP5583180B2 (ja) | 仮想gpu | |
JP5787629B2 (ja) | マシンビジョン用マルチプロセッサシステムオンチップ | |
KR100420706B1 (ko) | 가변폭버스의동시적인액세스를이용하는다중프로세서시스템에서i/o제어를위한방법및시스템 | |
US6081851A (en) | Method and apparatus for programming a remote DMA engine residing on a first bus from a destination residing on a second bus | |
US6775727B2 (en) | System and method for controlling bus arbitration during cache memory burst cycles | |
US20190196996A1 (en) | Dynamically determining memory access burst length | |
US10846253B2 (en) | Dynamic page state aware scheduling of read/write burst transactions | |
US20120137090A1 (en) | Programmable Interleave Select in Memory Controller | |
KR100296718B1 (ko) | 다중프로세서 시스템에서 가변폭 버스를 동시에 액세스하기 위한 방법 및 시스템 | |
US20200133905A1 (en) | Memory request management system | |
KR19990029294A (ko) | 가변폭 버스의 동시적인 액세스를 이용하는 다중프로세서시스템에서 버스중재를 위한 방법 및 시스템 | |
JP2012038293A5 (ja) | ||
WO2014133705A1 (en) | A method, apparatus, system for representing, specifying and using deadlines | |
KR20050051672A (ko) | 스케일러블 멀티채널 메모리 액세스를 위한 방법 및 메모리제어기 | |
EP3732578B1 (en) | Supporting responses for memory types with non-uniform latencies on same channel | |
US8458406B2 (en) | Multiple critical word bypassing in a memory controller | |
JP5058116B2 (ja) | ストリーミングidメソッドによるdmac発行メカニズム | |
US6738837B1 (en) | Digital system with split transaction memory access | |
JP2006268753A (ja) | Dma回路及びコンピュータシステム | |
JP2008544348A (ja) | メモリーコントローラ及びネットワークとメモリーの結合方法 | |
US8856459B1 (en) | Matrix for numerical comparison | |
JP2008509470A (ja) | プロセッサと外部周辺装置との間の通信を制御するコントローラおよび方法 | |
KR20070020391A (ko) | 스트리밍 id 방법에 의한 dmac 발행 메커니즘 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20100714 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20100818 |
|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A712 Effective date: 20101125 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20110111 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110531 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110801 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20120327 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120626 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20120703 |
|
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: 20120731 |
|
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: 20120731 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150810 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5058116 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |