JP2010044645A - データ転送装置、およびデータ転送方法 - Google Patents
データ転送装置、およびデータ転送方法 Download PDFInfo
- Publication number
- JP2010044645A JP2010044645A JP2008209032A JP2008209032A JP2010044645A JP 2010044645 A JP2010044645 A JP 2010044645A JP 2008209032 A JP2008209032 A JP 2008209032A JP 2008209032 A JP2008209032 A JP 2008209032A JP 2010044645 A JP2010044645 A JP 2010044645A
- Authority
- JP
- Japan
- Prior art keywords
- data transfer
- priority
- unit
- arbitration
- dma
- 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
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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Bus Control (AREA)
Abstract
【解決手段】本実施例にかかるデータ転送装置の一側面によれば、記憶部に記憶されたデータを複数の他の装置に対してダイレクトメモリアクセス(DMA)転送するためのデータ転送装置において、データの転送先となる該複数の他の装置に対応して設けられ、DMA転送命令を保持し、保持した該DMA転送命令の数を出力する複数のチャネル部と、それぞれの該チャネル部に対応して設けられ、該DMA転送命令を保持した数に基づいて該他の装置に対しての該DMA転送命令の優先度を設定する複数の優先度設定部と、該複数の優先度設定部からの情報に基づき該DMA転送命令を一つ選択する調停部と、該調停部が選択した該DMA転送命令に応じて該他の装置に該記憶部のデータをDMA転送するデータ転送処理部を備えたことを特徴とする。
【選択図】図2
Description
定部からの情報に基づき該DMA転送命令を一つ選択する調停部と、該調停部が選択した該DMA転送命令に応じて該他の装置に該記憶部のデータをDMA転送するデータ転送処理部を備えたことを特徴とする。
[データ制御装置]
図1はデータ制御装置100のブロック図である。データ制御装置100はs個の複数のコントローラモジュール104、スイッチ部102を有する。なお、図1には複数のコントローラモジュール104のうち一つのコントローラモジュール104の内部のブロック図を詳細に示す。
ストインターフェース114を介してコントローラモジュール104にデータの書き込みや読み出し等の命令を行う。ディスクインターフェース116は図示しない磁気ディスク装置やRAID装置と接続される。個々のコントローラモジュール104はディスクインターフェース116を介して磁気ディスク装置等とデータの書き込みや読み出しを行う。[データ転送装置]
図2はデータ転送装置106のブロック図である。前述の通りデータ転送装置106はデータ転送処理群120、調停部122、優先度設定群126、チャネル群124を有する。優先度設定群126はn個の複数の優先度設定部300を有する。チャネル群124はn個のチャネル部200を有する。
くなるのを防ぐことが出来る。これによりチャネル部200に要求されたコマンドのタイムアウトを防止する事ができる。
[チャネル部]
図3はチャネル部200の詳細ブロック図である。それぞれのチャネル部200はステートマシン400、開始レジスタ402、終了レジスタ404、状態レジスタ406を有する。
ら受信する。終了信号420および状態信号412を受信したステートマシン400は開始レジスタ402のアドレスを加算し、状態レジスタ406に状態信号412を保持させる。開始レジスタ402のアドレスを加算した後、ステートマシン400は開始レジスタ402および終了レジスタ404に保持されたアドレス値の差分を計算する。ステートマシン400は差分が“0”でなければ要求信号212、アドレス信号213、およびコマンド数信号214を再び出力する。
[ステートマシン]
図4はステートマシン400の動作フローチャート図である。
[優先度設定部]
図5は優先度設定部300のブロック図である。優先度設定部300は優先度判定回路500、閾値レジスタ502、OR回路504を有する。
[優先度判定回路]
図6は優先度判定回路500の動作フローチャート図である。本実施例において、優先度判定回路500は入力された要求信号212を3つの優先度レベルのいずれかに設定する。また、閾値レジスタ502はレベル高の判定値として“20”を、レベル中の判定値として“10”を記憶している。優先度判定回路500はレベル高、レベル中、またはレベル低の要求信号212を判定レベルに応じて第一調停部302に出力する。
[第一調停部]
図7はそれぞれの第一調停部302のブロック図である。第一調停部302は入力信号の調停処理を行う調停処理部350、調停処理部350により選択したチャネルのチャネル番号318を保持するチャネルレジスタ352を有する。
ャネルレジスタ352に保持しておくことにより、調停処理部350は要求信号212を出力したチャネルに対して承認信号410を送信することができる。
[第二調停部]
図8はそれぞれの第一調停部302により出力された要求信号212を優先度に応じて調停する第二調停部304のブロック図である。
[優先度テーブル]
図9は調停処理部800が参照する優先度テーブル804である。優先度テーブル804において、列900はポインタレジスタ808に記憶するポインタ値を、列902はポインタ値に対応する優先度を示す。本実施例において、優先度テーブル804は9行のデータを有している。9行のデータのうち5行はレベル高、3行はレベル中、1行はレベル低のコマンドとなっている。ポインタ値に対応する優先度の数をレベル高が多くなるように割り振ることにより、優先度テーブル804の一行目から順番に参照しながら調停処理部800に優先度を設定すると、レベル高のコマンドがもっとも高い比率で選択され、レベル低のコマンドがもっとも低い比率で選択されるように設定することができる。本実施の形態の場合、レベル高のコマンドが選択される比率は約56%であり、レベル低のコマンドが選択される比率は約11%である。
4に送信する。
[調停処理部]
図10は調停処理部800の動作フローチャート図である。調停処理部800はポインタレジスタ808に保持しているポインタの値を“0”にする(S200)。調停処理部800はそれぞれの第一調停部302のいずれかから要求信号212を受信するまで待機状態にあり(S202、NO)、要求信号212を受信するとステップS204に進む(S202、YES)。
タ値に“1”を加算する(S216)。ポインタ値の加算処理後、調停処理部800はステップS202以降の処理を繰り返す。
104 コントローラモジュール
106 データ転送装置
110 制御部
112 記憶部
120 データ転送処理群
122 調停部
124 チャネル群
126 優先度設定群
204 データ転送処理部
200 チャネル部
300 優先度設定部
302 第一調停部
304 第二調停部
212 要求信号
213 アドレス信号
214 コマンド数信号
410 承認信号
412 状態信号
420 終了信号
400 ステートマシン
402 開始レジスタ
404 終了レジスタ
406 状態レジスタ
222 割り込み信号
500 優先度判定回路
502 閾値レジスタ
350 調停処理部
352 チャネルレジスタ
800 調停処理部
802 テーブルレジスタ
804 優先度テーブル
806 チャネルレジスタ
808 ポインタレジスタ
810 状態レジスタ
Claims (9)
- 記憶部に記憶されたデータを複数の他の装置に対してダイレクトメモリアクセス(DMA)転送するためのデータ転送装置において、
データの転送先となる該複数の他の装置に対応して設けられ、DMA転送命令を保持し、保持した該DMA転送命令の数を出力する複数のチャネル部と、
それぞれの該チャネル部に対応して設けられ、該DMA転送命令を保持した数に基づいて該他の装置に対しての該DMA転送命令の優先度を設定する複数の優先度設定部と、
該複数の優先度設定部からの情報に基づき該DMA転送命令を一つ選択する調停部と、
該調停部が選択した該DMA転送命令に応じて該他の装置に該記憶部のデータをDMA転送するデータ転送処理部を
備えたことを特徴とするデータ転送装置。 - 該調停部は該複数の優先度設定部に設定された優先度ごとに設けられ、同一優先度を設定した複数の該他の装置から一定の順序で一つの装置を選択する複数の第一調停部と、該複数の第一調停部が選択した該装置から該優先度に応じて一つ選択する第二調停部とを有することを特徴とする、請求項1に記載のデータ転送装置。
- 該第二調停部は該優先度に応じた該他の装置の選択順位を設定した優先度テーブルを記憶するテーブルレジスタと、該優先度テーブルに基づいて該他の装置を選択する調停処理部とを有することを特徴とする、請求項2に記載のデータ転送装置。
- 該データ転送処理部がデータ転送処理中か否かを記憶する状態レジスタと、
該データ転送処理部によるDMA転送先である該他の装置に対応するチャネル部を記憶するチャネルレジスタと
をさらに有することを特徴とする、請求項2に記載のデータ転送装置。 - 該第二調停部は該状態レジスタの情報に基づいて該チャネル部に終了信号を出力し、
該チャネル部は該終了信号を受信するまで該DMA転送命令の実行要求を停止する
ことを特徴とする、請求項4に記載のデータ転送装置。 - 該優先度設定部は優先度を判定するための一つ以上の閾値を記憶する閾値レジスタを有することを特徴とする、請求項1に記載のデータ転送装置。
- 記憶部に記憶されたデータを複数の他の装置に対してダイレクトメモリアクセス(DMA)転送するためのデータ転送装置のデータ転送方法において、
データの転送先となる該複数の他の装置に対応してDMA転送命令を保持し、
該DMA転送命令を保持した数に基づいて該他の装置に対しての該DMA転送命令の優先度を設定し、
設定した該優先度に基づきDMA転送する対象の該他の装置を一つ選択し、
選択した該他の装置に対して該記憶部のデータをDMA転送する
ことを特徴とするデータ転送装置のデータ転送方法。 - 同一優先度を設定した複数の該他の装置から均等に一つの装置を選択し、選択した該装置から該優先度に応じてDMA転送する対象の該他の装置を一つ選択することを特徴とする、請求項7に記載のデータ転送装置のデータ転送方法。
- 該優先度に応じた該他の装置の選択は該優先度による該他の装置の選択順位を設定した優先度テーブルに基づいて行うことを特徴とする、請求項8に記載のデータ転送装置のデータ転送方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008209032A JP5056668B2 (ja) | 2008-08-14 | 2008-08-14 | データ転送装置、およびデータ転送方法 |
US12/502,573 US8156260B2 (en) | 2008-08-14 | 2009-07-14 | Data transfer device and method for selecting instructions retained in channel unit based on determined priorities due to the number of waiting commands/instructions |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008209032A JP5056668B2 (ja) | 2008-08-14 | 2008-08-14 | データ転送装置、およびデータ転送方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010044645A true JP2010044645A (ja) | 2010-02-25 |
JP5056668B2 JP5056668B2 (ja) | 2012-10-24 |
Family
ID=41682053
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008209032A Active JP5056668B2 (ja) | 2008-08-14 | 2008-08-14 | データ転送装置、およびデータ転送方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US8156260B2 (ja) |
JP (1) | JP5056668B2 (ja) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8683100B1 (en) | 2011-06-21 | 2014-03-25 | Netlogic Microsystems, Inc. | Method and apparatus for handling data flow in a multi-chip environment using an interchip interface |
US8972614B2 (en) * | 2011-12-26 | 2015-03-03 | Apple Inc. | Half-duplex SATA link with controlled idle gap insertion |
CN103678199B (zh) * | 2012-09-26 | 2017-05-10 | 深圳市中兴微电子技术有限公司 | 一种传输数据的方法和设备 |
US9658799B2 (en) * | 2013-09-25 | 2017-05-23 | International Business Machines Corporation | Data storage device deferred secure delete |
CN115658566B (zh) * | 2022-11-02 | 2023-05-30 | 中科驭数(北京)科技有限公司 | 一种实现多通道数据流均衡的方法和系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05204833A (ja) * | 1992-01-28 | 1993-08-13 | Nec Kyushu Ltd | ダイレクトメモリアクセス転送制御装置 |
JPH08129522A (ja) * | 1994-10-31 | 1996-05-21 | Victor Co Of Japan Ltd | マルチメディアデータの転送方法 |
JP2008176482A (ja) * | 2007-01-17 | 2008-07-31 | Hitachi Ltd | 仮想計算機システム |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05342142A (ja) | 1992-06-04 | 1993-12-24 | Nec Corp | 直接メモリアクセス制御方式 |
JP2002229934A (ja) | 2001-01-31 | 2002-08-16 | Sony Corp | 情報転送装置および情報転送方法 |
JP5040050B2 (ja) | 2001-06-12 | 2012-10-03 | 富士通株式会社 | 複数チャネルdmaコントローラおよびプロセッサシステム |
JP4322068B2 (ja) * | 2003-03-07 | 2009-08-26 | 富士通株式会社 | ストレージシステム及びそのデイスク負荷バランス制御方法 |
WO2005015805A2 (en) * | 2003-08-08 | 2005-02-17 | Visionflow, Inc. | Software and hardware partitioning for multi-standard video compression and decompression |
US7577772B2 (en) * | 2004-09-08 | 2009-08-18 | Qlogic, Corporation | Method and system for optimizing DMA channel selection |
JP4878185B2 (ja) * | 2006-03-17 | 2012-02-15 | 株式会社リコー | データ通信回路および調停方法 |
-
2008
- 2008-08-14 JP JP2008209032A patent/JP5056668B2/ja active Active
-
2009
- 2009-07-14 US US12/502,573 patent/US8156260B2/en not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05204833A (ja) * | 1992-01-28 | 1993-08-13 | Nec Kyushu Ltd | ダイレクトメモリアクセス転送制御装置 |
JPH08129522A (ja) * | 1994-10-31 | 1996-05-21 | Victor Co Of Japan Ltd | マルチメディアデータの転送方法 |
JP2008176482A (ja) * | 2007-01-17 | 2008-07-31 | Hitachi Ltd | 仮想計算機システム |
Also Published As
Publication number | Publication date |
---|---|
US8156260B2 (en) | 2012-04-10 |
US20100042756A1 (en) | 2010-02-18 |
JP5056668B2 (ja) | 2012-10-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6072783B2 (ja) | メモリコントローラおよびかかるメモリコントローラの動作方法 | |
JP6146128B2 (ja) | データ処理装置 | |
US7805555B2 (en) | Multiprocessor system | |
JP2011150397A (ja) | バス調停装置 | |
JP2008130056A (ja) | 半導体回路 | |
JP2015505114A (ja) | 動的優先制御のシステムおよび方法 | |
JP5056668B2 (ja) | データ転送装置、およびデータ転送方法 | |
JP2013200686A (ja) | データ処理装置、データ容量増加抑制方法 | |
JP5565204B2 (ja) | データ転送装置、データ転送方法およびプログラム、ならびに、画像形成装置 | |
JP2010027006A (ja) | メモリアクセスシステム、メモリ制御装置、メモリ制御方法、および、プログラム | |
JP2010211322A (ja) | ネットワークプロセッサ、受信コントローラ、及びデータ受信処理方法 | |
JP2011232917A (ja) | 半導体集積回路、及びリクエスト制御方法 | |
JP2008040650A (ja) | バスアービトレーション装置 | |
JP2007172112A (ja) | メモリコントローラ | |
JP5382113B2 (ja) | 記憶制御装置及びその制御方法 | |
JP5239769B2 (ja) | リクエスト順序制御システム、リクエスト順序制御方法およびリクエスト順序制御プログラム | |
JP2006215621A (ja) | Dma制御装置 | |
US10540305B2 (en) | Semiconductor device | |
KR20090128851A (ko) | 버스 중재 방법 및 장치 | |
JP2008108126A (ja) | データ転送制御装置及びそのバスアクセス調停方法 | |
JP2009271610A (ja) | バッファ制御回路、バッファ回路およびデータ処理装置 | |
JP7292044B2 (ja) | 制御装置および制御方法 | |
JP2015014962A (ja) | 演算装置、演算方法、及びプログラム | |
CN113711192B (zh) | 信息处理装置 | |
JP2008250419A (ja) | 競合調停装置、マスタスレーブシステム及び競合調停方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110513 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120417 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120418 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120614 |
|
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: 20120703 |
|
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: 20120716 |
|
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: 5056668 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |