Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP3206580B2 - DMA data transfer control method and input / output processing device - Google Patents
[go: Go Back, main page]

JP3206580B2 - DMA data transfer control method and input / output processing device - Google Patents

DMA data transfer control method and input / output processing device

Info

Publication number
JP3206580B2
JP3206580B2 JP01402199A JP1402199A JP3206580B2 JP 3206580 B2 JP3206580 B2 JP 3206580B2 JP 01402199 A JP01402199 A JP 01402199A JP 1402199 A JP1402199 A JP 1402199A JP 3206580 B2 JP3206580 B2 JP 3206580B2
Authority
JP
Japan
Prior art keywords
dma
transfer
input
resource
unused
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
Application number
JP01402199A
Other languages
Japanese (ja)
Other versions
JP2000215153A (en
Inventor
弦 宮崎
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP01402199A priority Critical patent/JP3206580B2/en
Publication of JP2000215153A publication Critical patent/JP2000215153A/en
Application granted granted Critical
Publication of JP3206580B2 publication Critical patent/JP3206580B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Bus Control (AREA)

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は計算機システムにお
けるDMAデータ転送制御方法及び入出力処理装置に関
する。
[0001] 1. Field of the Invention [0002] The present invention relates to a DMA data transfer control method and an input / output processing device in a computer system.

【0002】[0002]

【従来の技術】DMA(Direct Memory
Access)制御方式は、中央処理装置(CPU)と
周辺装置との間にデータ転送専用のハードウェア機構を
設け、中央処理装置からの指示に従って主記憶と周辺装
置との間のデータ転送を中央処理装置の動作と独立して
自律的に行う方式である。特に、規模の大きな計算機で
は、DMA転送のためのハードウェア機構であるDMA
ハードウェアリソースを複数有する入出力処理装置(I
OP)を中央処理装置と周辺装置との間に設け、チャネ
ル制御方式により、主記憶と多数の周辺装置との間のD
MA制御方式によるデータ転送を並行して実行するI/
Oプロセッサ方式が採用される。
2. Description of the Related Art DMA (Direct Memory)
The Access control method includes a hardware mechanism dedicated to data transfer between a central processing unit (CPU) and a peripheral device, and centrally processes data transfer between a main memory and a peripheral device according to an instruction from the central processing unit. This is a system that performs autonomous operation independently of the operation of the device. In particular, in a large-scale computer, the DMA mechanism which is a hardware mechanism for DMA transfer is used.
An input / output processing device (I) having a plurality of hardware resources
OP) is provided between the central processing unit and the peripheral devices, and the D channel between the main memory and many peripheral devices is controlled by the channel control method.
I / O that executes data transfer by MA control system in parallel
An O processor system is adopted.

【0003】そして、従来の入出力処理装置において
は、中央処理装置からのデータ転送要求時、その要求が
主記憶から周辺装置へのOutput転送であるか、そ
の逆の周辺装置から主記憶へのInput転送であるか
にかかわらず、同じ重みでDMAハードウェアリソース
の割り当てを行っていた。つまり、Input転送、O
utput転送の違いによって、DMAハードウェアリ
ソースを割り当てる確率に特に差を設けていなかった。
In a conventional input / output processing device, when a data transfer request is made from a central processing unit, the request is an output transfer from a main memory to a peripheral device, or vice versa. Regardless of the input transfer, the DMA hardware resources are allocated with the same weight. That is, input transfer, O
There is no particular difference in the probability of allocating DMA hardware resources due to the difference in output transfer.

【0004】[0004]

【発明が解決しようとする課題】ところで、計算機シス
テムにおける入出力では、Input転送とOutpu
t転送の割合は2:1とも3:1とも言われており、全
転送中に占める割合がInput転送の方がOutpu
t転送より多い。また、DMAデータ転送の大部分を占
めると思われる磁気ディスク装置との間のデータ転送を
例に挙げると、同じデータ長の場合、Output転送
の方がInput転送より処理時間が短くなる傾向があ
る。その理由は、現在、ほとんどの磁気ディスク装置は
ディスクキャッシュを有しており、キャッシュが空の状
態では、Output転送時はキャッシュにアドレス,
データを書き込んだ時点でライト動作が完了し、ディス
ク媒体への書き込みが終了するまで入出力処理装置が待
たなくても済むのに対し、Input転送ではディスク
媒体からキャッシュにデータを読み出すためにディスク
シーク時間や回転待ち時間が介在することになるためで
ある。
By the way, in the input and output in the computer system, the input transfer and the output
It is said that the ratio of the t transfer is 2: 1 or 3: 1. The ratio of the input transfer to the output during the entire transfer is Outpu.
More than t transfers. Also, taking as an example data transfer to and from a magnetic disk device which is considered to occupy most of the DMA data transfer, Output transfer tends to have a shorter processing time than Input transfer for the same data length. . The reason is that at present, most magnetic disk devices have a disk cache, and when the cache is empty, an address,
When the data is written, the write operation is completed and the I / O processing unit does not have to wait until the writing to the disk medium is completed. On the other hand, in the input transfer, the disk seek is performed to read the data from the disk medium to the cache. This is because the time and the rotation waiting time are involved.

【0005】このため、上述したようにInput転
送、Output転送の違いによってDMAハードウェ
アリソースを割り当てる確率に差を付けない従来技術で
は、Input転送で全てのDMAハードウェアリソー
スが塞がってしまい、Output転送が待たされる場
面がしばしば発生し、これがシステムのスループットを
低下させる要因となっていた。
[0005] For this reason, in the prior art in which the probability of allocating DMA hardware resources does not differ depending on the difference between input transfer and output transfer as described above, all DMA hardware resources are blocked by input transfer, and output transfer is performed. Is often awaited, which has been a factor in reducing the system throughput.

【0006】そこで本発明の目的は、DMAデータ転送
時、Input転送でDMAハードウェアリソースが塞
がってしまうことが無いようにDMAハードウェアリソ
ースの割り当てを制御することによりスループットの向
上を図ることにある。
SUMMARY OF THE INVENTION It is therefore an object of the present invention to improve the throughput by controlling the allocation of DMA hardware resources so that the DMA transfer does not block the DMA hardware resources during DMA data transfer. .

【0007】[0007]

【課題を解決するための手段】本発明のDMAデータ転
送制御方法は、アドレスレジスタ,データレジスタ、カ
ウンタ、各種制御フラグ及びこれらをコントロールする
制御部を含みDMA転送に必要な情報が設定されて独立
に動作する複数個のDMAハードウェアリソースを使用
して、主記憶と周辺装置との間で複数のDMAデータ転
送を並行して行うDMAデータ転送制御方法において、
Input転送、Output転送の違いによって、D
MAハードウェアリソースの割り当て確率に差を持たせ
る。具体的には、前記複数個のDMAハードウェアリソ
ースを、周辺装置から主記憶へのInput転送および
主記憶から周辺装置へのOutput転送の両方で使用
する第1のリソース群と前記Output転送のみで使
用する第2のリソース群とに分け、Input転送時は
前記第1のリソース群の中から未使用のものを割り当
て、Output転送時は前記第1および第2のリソー
ス群の中から未使用のものを割り当てることを特徴とす
る。これによって、第2のリソース群に含まれるDMA
ハードウェアリソースはInput転送用には割り当て
られず、Output転送専用となるため、Input
転送で全てのDMAハードウェアリソースが塞がってし
まうことが防止される。
According to the DMA data transfer control method of the present invention, an address register, a data register, and a
Counter, various control flags, and control these
A DMA that includes a control unit and performs a plurality of DMA data transfers in parallel between a main memory and a peripheral device by using a plurality of DMA hardware resources in which information necessary for the DMA transfer is set and operates independently. In the data transfer control method,
Depending on the difference between input transfer and output transfer, D
A difference is made between the allocation probabilities of the MA hardware resources. Specifically, the plurality of DMA hardware resources can be transferred only by the first resource group used for both the input transfer from the peripheral device to the main memory and the output transfer from the main memory to the peripheral device and the output transfer. It is divided into a second resource group to be used, and at the time of input transfer, an unused resource is allocated from the first resource group. At the time of output transfer, an unused resource is allocated from the first and second resource groups. It is characterized by assigning things. As a result, the DMAs included in the second resource group
Hardware resources are not allocated for input transfer, but are dedicated to output transfer.
This prevents all DMA hardware resources from being blocked by transfer.

【0008】また本発明の入出力処理装置は、アドレス
レジスタ,データレジスタ、カウンタ、各種制御フラグ
及びこれらをコントロールする制御部を含みDMA転送
に必要な情報が設定されて独立に動作するn個のDMA
ハードウェアリソースを有し、中央処理装置からのデー
タ転送要求に基づき主記憶と周辺装置との間で複数のD
MAデータ転送を並行して行う入出力処理装置におい
て、前記中央処理装置からのデータ転送要求時、要求さ
れたデータ転送が周辺装置から主記憶へのInput転
送の場合には、前記n個のDMAハードウェアリソース
の内のn−m個を探索範囲として未使用のDMAハード
ウェアリソースを探索して当該Input転送用に割り
当て、要求されたデータ転送が主記憶から周辺装置への
Output転送の場合には、前記n個のDMAハード
ウェアリソースの全てを探索範囲として未使用のDMA
ハードウェアリソースを探索して当該Output転送
用に割り当てるハードウェアロック制御部を備えること
を特徴とする。
Further, the input / output processing device of the present invention has an address
Registers, data registers, counters, various control flags
And n independent DMAs, each of which includes a control unit for controlling these and sets information necessary for DMA transfer and operates independently
It has hardware resources, and has a plurality of Ds between a main memory and a peripheral device based on a data transfer request from a central processing unit.
In an input / output processing device that performs MA data transfer in parallel, when the requested data transfer is an input transfer from a peripheral device to a main memory at the time of a data transfer request from the central processing unit, the n DMAs An unused DMA hardware resource is searched for by using nm of the hardware resources as a search range and allocated for the input transfer. When the requested data transfer is an output transfer from the main memory to the peripheral device, The unused DMA hardware resources are used as search ranges for unused DMA hardware resources.
A hardware lock control unit that searches for hardware resources and allocates the hardware resources for the output transfer is provided.

【0009】[0009]

【発明の実施の形態】次に本発明の実施の形態の例につ
いて図面を参照して詳細に説明する。
DESCRIPTION OF THE PREFERRED EMBODIMENTS Next, embodiments of the present invention will be described in detail with reference to the drawings.

【0010】図1は本発明の一実施形態の概略構成図で
ある。図において、Aは、DMA転送に必要な情報が設
定されて独立に動作する複数個のDMAハードウェアリ
ソースBを使用して、主記憶Cと周辺装置Dとの間で複
数のDMAデータ転送を並行して行う入出力処理装置で
ある。複数個のDMAハードウェアリソースBは、周辺
装置Dから主記憶CへのInput転送および主記憶C
から周辺装置DへのOutput転送の両方で使用する
第1のリソース群Eと、Output転送のみで使用す
る第2のリソース群Fとに論理的に分けられている。D
MAハードウェアリソースBの全個数をn、第2のリソ
ース群Fに含まれるDMAハードウェアリソースBの個
数をmとすると、第1のリソース群Eに含まれるDMA
ハードウェアリソースBの個数はn−mである。mの値
は、Input転送とOutput転送の割合などを考
慮して定められ、例えば1,2等とされる。
FIG. 1 is a schematic configuration diagram of an embodiment of the present invention. In the figure, A indicates a case where a plurality of DMA data transfers between the main memory C and the peripheral device D are performed by using a plurality of DMA hardware resources B which are independently set with information necessary for the DMA transfer. It is an input / output processing device that is performed in parallel. The plurality of DMA hardware resources B are used for input transfer from the peripheral device D to the main memory C and for the main memory C
Are logically divided into a first resource group E used for both Output transfer to the peripheral device D and a second resource group F used only for Output transfer. D
Assuming that the total number of MA hardware resources B is n and the number of DMA hardware resources B included in the second resource group F is m, the DMA number included in the first resource group E is
The number of hardware resources B is nm. The value of m is determined in consideration of the ratio between the input transfer and the output transfer, and is, for example, 1, 2, or the like.

【0011】入出力処理装置Aは、図示しない中央処理
装置からのデータ転送要求時、要求されたデータ転送が
周辺装置Dから主記憶CへのInput転送か、その逆
の主記憶Cから周辺装置DへのOutput転送かを判
別する。次に、Input転送の場合には、第1のリソ
ース群E内から未使用のDMAハードウェアリソースB
を探索し、当該Input転送用に割り当てる。次に、
そのDMAハードウェアリソースBに対してDMAデー
タ転送に必要な情報を設定してDMA転送の準備を行
い、その後、当該DMAハードウェアリソースBを使用
して、周辺装置Dから主記憶CへのDMAデータ転送を
行う。そして、DMAデータ転送が終了すると、当該D
MAハードウェアリソースBが未使用状態に戻される。
When a data transfer request is sent from a central processing unit (not shown), the input / output processing unit A requests the data transfer from the peripheral device D to the main memory C or vice versa. It is determined whether the transfer is an Output transfer to D. Next, in the case of the input transfer, the unused DMA hardware resources B
Is searched and assigned for the input transfer. next,
Information necessary for DMA data transfer is set in the DMA hardware resource B to prepare for DMA transfer, and then the DMA hardware resource B is used to transfer a DMA from the peripheral device D to the main memory C. Perform data transfer. When the DMA data transfer ends, the D
The MA hardware resource B is returned to the unused state.

【0012】他方、図示しない中央処理装置からの要求
がOutput転送の場合には、第1のリソース群Eお
よび第2のリソース群F内から未使用のDMAハードウ
ェアリソースを探索し、当該Output転送用に割り
当てる。このときの探索順序としては、例えば、最初に
第1のリソース群Eを探索し、第1のリソース群E中に
未使用のDMAハードウェアリソースが存在しなけれ
ば、次に第2のリソース群F内を探索する。次に、その
DMAハードウェアリソースに対してDMAデータ転送
に必要な情報を設定してDMA転送の準備を行い、その
後、当該DMAハードウェアリソースを使用して、主記
憶Cから周辺装置DへのDMAデータ転送を行う。そし
て、DMAデータ転送が終了すると、当該DMAハード
ウェアリソースBが未使用状態に戻される。
On the other hand, when a request from a central processing unit (not shown) is an output transfer, an unused DMA hardware resource is searched for from the first resource group E and the second resource group F, and the output transfer is performed. Assign for As the search order at this time, for example, the first resource group E is searched first, and if there is no unused DMA hardware resource in the first resource group E, then the second resource group E Search in F. Next, information necessary for DMA data transfer is set for the DMA hardware resource to prepare for DMA transfer, and then the DMA hardware resource is used to transfer data from the main memory C to the peripheral device D. Performs DMA data transfer. When the DMA data transfer is completed, the DMA hardware resource B is returned to the unused state.

【0013】なお、入出力処理装置Aがファームウェア
によって制御されるプロセッサを有する場合、Inpu
t転送用、Output転送用のDMAハードウェアリ
ソースの探索は、それぞれ所定のマイクロ命令の実行に
より行われる。
If the input / output processing device A has a processor controlled by firmware, the
The search for the DMA hardware resources for the t transfer and the output transfer is performed by executing a predetermined microinstruction.

【0014】このように本実施形態の入出力処理装置A
によれば、第2のリソース群Fに含まれるDMAハード
ウェアリソースBはInput転送用には割り当てられ
ず、Output転送専用となるため、従来のようにI
nput転送で全てのDMAハードウェアリソースBが
塞がってしまうことが防止される。
As described above, the input / output processing device A of the present embodiment
According to the above, the DMA hardware resource B included in the second resource group F is not allocated for input transfer, and is dedicated to output transfer.
This prevents all DMA hardware resources B from being blocked by nput transfer.

【0015】次に本発明の実施例について図面を参照し
て詳細に説明する。
Next, embodiments of the present invention will be described in detail with reference to the drawings.

【0016】図2は本発明を適用した計算機システムの
一例を示すブロック図である。この例の計算機システム
は、主記憶装置1と、中央処理装置2と、両者を接続す
るグローバルバス6と、中央処理装置2に接続された入
出力処理装置3と、この中央処理装置3に接続された1
台以上の周辺処理装置(例えば磁気ディスク処理装置な
ど)4と、各周辺処理装置4に接続された1台以上の周
辺装置(例えば磁気ディスク装置など)5とから構成さ
れている。なお、この例の計算機システムは、入出力処
理装置3が1台だけ接続されているが、複数台の入出力
処理装置を有する計算機システムに対しても本発明は適
用可能である。
FIG. 2 is a block diagram showing an example of a computer system to which the present invention is applied. The computer system of this example includes a main storage device 1, a central processing unit 2, a global bus 6 connecting them, an input / output processing unit 3 connected to the central processing unit 2, and a connection to the central processing unit 3. Done 1
It is composed of at least one peripheral processing device (for example, a magnetic disk device) 4 and one or more peripheral devices (for example, a magnetic disk device) 5 connected to each peripheral processing device 4. Although the computer system of this example has only one input / output processing device 3 connected thereto, the present invention is also applicable to a computer system having a plurality of input / output processing devices.

【0017】図3に中央処理装置2の内部構成例を示
す。この例の中央処理装置2は、演算処理装置(EP
U)21と、グローバルバス6に接続されたグローバル
バス制御部(GBC)22と、入出力制御部(IOC)
23と、演算処理装置21,グローバルバス制御部22
および入出力制御部23を相互に接続するローカルバス
25と、入出力制御部23と各入出力処理装置(IO
P)3との間に設けられた汎用ポート(GPC)24と
を含んでいる。演算処理装置21が狭義の中央処理装置
に相当し、主記憶装置1と周辺装置とのDMAデータ転
送は演算処理装置21の動作と独立に行われる。この場
合のデータ転送経路は、Input転送の場合は、入出
力処理装置3→汎用ポート24→入出力制御部23→グ
ローバルバス制御部22→主記憶装置1の経路であり、
Output転送の場合は、主記憶装置1→グローバル
バス制御部22→入出力制御部23→汎用ポート24→
入出力処理装置3の経路である。
FIG. 3 shows an example of the internal configuration of the central processing unit 2. The central processing unit 2 of this example includes an arithmetic processing unit (EP
U) 21, a global bus controller (GBC) 22 connected to the global bus 6, and an input / output controller (IOC)
23, arithmetic processing unit 21, global bus control unit 22
And a local bus 25 interconnecting the input / output control unit 23, the input / output control unit 23 and each input / output processing device (IO
P) 3 and a general-purpose port (GPC) 24 provided therebetween. The arithmetic processing unit 21 corresponds to a central processing unit in a narrow sense, and the DMA data transfer between the main storage device 1 and the peripheral device is performed independently of the operation of the arithmetic processing unit 21. In this case, the data transfer path in the case of the input transfer is a path from the input / output processing device 3 → the general-purpose port 24 → the input / output control unit 23 → the global bus control unit 22 → the main storage device 1.
In the case of the output transfer, the main storage device 1 → global bus control unit 22 → input / output control unit 23 → general-purpose port 24 →
This is a path of the input / output processing device 3.

【0018】なお、入出力処理装置3と主記憶装置1と
の接続形態は、図2および図3に示すものに限らず、例
えば、主記憶装置1と中央処理装置2と入出力処理装置
3とをシステム制御装置(SCU)経由で相互に接続し
た形態であっても良い。
The connection form between the input / output processing device 3 and the main storage device 1 is not limited to those shown in FIGS. 2 and 3, for example, the main storage device 1, the central processing device 2, the input / output processing device 3 May be mutually connected via a system control unit (SCU).

【0019】再び図2を参照すると、本実施例における
入出力処理装置3は、プロセッサ31と、それに接続さ
れたローカルメモリ32と、プロセッサ31に接続され
た2個のチャネル制御部33と、各チャネル制御部33
に接続された複数のチャネル34とから構成され、各チ
ャネル34に1台以上の周辺処理装置4が接続されてい
る。プロセッサ31は、入出力処理装置3の主たる処理
を実行する部分であり、ファームウェア311によって
制御され、また、n個のDMAハードウェアリソース3
13−1〜313−nと、これを管理,制御するハード
ウェアロック制御部312とを備えている。ローカルメ
モリ32には、DMAデータ転送処理毎に、DMAデー
タ転送に必要な情報(転送先,転送元,開始アドレス,
データ転送量(カウント)、制御フラグ等)を格納する
DMA転送制御領域321−1〜321−mが適宜生成
される。チャネル制御部33はチャネル34とプロセッ
サ31とのインタフェースを持ち、チャネル34の制御
を行う。チャネル34は周辺処理装置4とのインタフェ
ースを持ち、周辺処理装置4を通じて周辺装置5とのデ
ータ転送を行う。
Referring again to FIG. 2, the input / output processing device 3 in this embodiment comprises a processor 31, a local memory 32 connected thereto, two channel controllers 33 connected to the processor 31, Channel control unit 33
And one or more peripheral processing devices 4 are connected to each channel 34. The processor 31 is a part that executes main processing of the input / output processing device 3, is controlled by the firmware 311, and has n DMA hardware resources 3.
13-1 to 313-n, and a hardware lock control unit 312 for managing and controlling the hardware lock control unit. The local memory 32 stores information necessary for DMA data transfer (transfer destination, transfer source, start address,
DMA transfer control areas 321-1 to 321-m for storing data transfer amounts (counts, control flags, and the like) are appropriately generated. The channel control unit 33 has an interface between the channel 34 and the processor 31, and controls the channel 34. The channel 34 has an interface with the peripheral processing device 4 and performs data transfer with the peripheral device 5 through the peripheral processing device 4.

【0020】個々のDMAハードウェアリソース313
−1〜313−nは全て同じ構成であり、アドレスレジ
スタ,データレジスタ、カウンタ、各種制御フラグ及び
これらをコントロールする制御部等、DMAデータ転送
に必要な一切のハードウェアで構成されている。各々の
DMAハードウェアリソース313−1〜313−n
は、プロセッサ31のファームウェアにより、データ転
送に必要な情報(転送先,転送元,開始アドレス,デー
タ転送量(カウント)を設定され、データ転送のスター
トを指示されると、その後はファームウェアとは独立に
チャネル制御部33,チャネル34を介して、主記憶装
置1と周辺処理装置4との間でデータ転送を行う。
Each DMA hardware resource 313
-1 to 313-n all have the same configuration, and are composed of all hardware necessary for DMA data transfer, such as an address register, a data register, a counter, various control flags, and a control unit for controlling these. DMA hardware resources 313-1 to 313-n
The information required for data transfer (transfer destination, transfer source, start address, data transfer amount (count)) is set by the firmware of the processor 31, and when the start of data transfer is instructed, it is independent of the firmware thereafter. Then, data is transferred between the main storage device 1 and the peripheral processing device 4 via the channel control unit 33 and the channel 34.

【0021】DMAハードウェアリソース313−1〜
313−nの個数は、複数個であれば任意であるが、本
実施例ではn=32、つまり合計32個としている。各
々のDMAハードウェアリソース313−1〜313−
nには1から32までの番号が付けられている。
DMA hardware resources 313-1 to 313-1
The number of 313-n is arbitrary as long as it is plural, but in this embodiment, n = 32, that is, 32 in total. DMA hardware resources 313-1 to 313-
n is numbered from 1 to 32.

【0022】本実施例における入出力処理装置3は概ね
以下のように動作する。
The input / output processing device 3 according to the present embodiment generally operates as follows.

【0023】(1)まず、入出力処理装置3のプロセッ
サ31は、中央処理装置2から要求を受けると、その要
求に基づき、主記憶装置1からチャネルプログラムを読
み出し、それを解釈して、データ転送先,データ転送
元,開始アドレス,データ転送量(カウント)等のデー
タ転送に必要な情報を、ローカルメモリ32上に1つ確
保したDMA転送制御領域321−i(i=1〜m)に
格納する。そして、チャネルプログラムによりプロセッ
サ31内で論理的な処理単位(プロセス)が1個起動さ
れ、チャネルプログラムの実行待ち行列に繋がれる。こ
の時点ではDMAハードウェアリソースは未だ割り当て
られていない。
(1) First, upon receiving a request from the central processing unit 2, the processor 31 of the input / output processing device 3 reads a channel program from the main storage device 1 based on the request, interprets the channel program, and Information necessary for data transfer, such as a transfer destination, a data transfer source, a start address, and a data transfer amount (count), is stored in one DMA transfer control area 321-i (i = 1 to m) secured on the local memory 32. Store. Then, one logical processing unit (process) is activated in the processor 31 by the channel program, and is connected to the channel program execution queue. At this point, the DMA hardware resources have not been allocated yet.

【0024】(2)上記のプロセスが実行待ち状態から
実行状態に移ると、ハードウェアロック制御部312に
より後述するようにして未使用のDMAハードウェアリ
ソース313−j(j=1〜n)が1つ獲得(ロック)
される。そして、獲得したDMAハードウェアリソース
313−jに、前記DMA転送制御領域321−iに格
納されたデータ転送制御情報が格納され、DMA転送の
準備が行われる。この時点でDMAハードウェアリソー
スが割り当てられたことになる。
(2) When the above-mentioned process shifts from the execution wait state to the execution state, the hardware lock control unit 312 removes unused DMA hardware resources 313-j (j = 1 to n) as described later. Get one (lock)
Is done. Then, the data transfer control information stored in the DMA transfer control area 321-i is stored in the acquired DMA hardware resource 313-j, and preparation for DMA transfer is performed. At this point, the DMA hardware resources have been allocated.

【0025】(3)その後プロセッサ31は、チャネル
制御部33に対して転送要求を行い、さらにチャネル制
御部33は該当チャネル34に対して転送要求を行い、
チャネル34は周辺処理装置4経由で該当周辺装置5と
の接続を確立する。
(3) After that, the processor 31 issues a transfer request to the channel controller 33, and the channel controller 33 issues a transfer request to the corresponding channel 34,
The channel 34 establishes a connection with the corresponding peripheral device 5 via the peripheral processing device 4.

【0026】(4)接続が確立した後は、主記憶装置1
←→DMAハードウェアリソース313−j←→チャネ
ル制御部33←→チャネル34←→周辺処理装置4←→
周辺装置5間でデータ転送が行われる。そして、DMA
ハードウェアリソース313−jは所定のデータ転送が
終了すると、プロセッサ31のファームウェア311に
割り込みを行う。ファームウェア311はデータ転送の
終了を確認すると、DMAハードウェアリソース313
−jの開放を行い、中央処理装置2に割り込みを行って
データ転送が終了したことを通知する。また、ファーム
ウェア311はローカルメモリ32上のDMA転送制御
領域321−iを開放する。
(4) After the connection is established, the main storage 1
← → DMA hardware resource 313-j ← → channel control unit 33 ← → channel 34 ← → peripheral processing unit 4 ← →
Data transfer is performed between the peripheral devices 5. And DMA
When the predetermined data transfer ends, the hardware resource 313-j interrupts the firmware 311 of the processor 31. When the firmware 311 confirms the end of the data transfer, the DMA hardware resource 313
-J is released, and an interrupt is issued to the central processing unit 2 to notify that the data transfer has been completed. Further, the firmware 311 releases the DMA transfer control area 321-i on the local memory 32.

【0027】ここで、プロセッサ31においては、プロ
セスは同時に64個まで起動できる。DMAハードウェ
アリソースは本例の場合、32個ある。従って、本実施
例では、論理的なDMAデータ転送処理は64多重まで
起動でき、実際のDMAデータ転送は32多重で動作可
能である(勿論、チャネル34はn個以上ある)。
Here, in the processor 31, up to 64 processes can be started simultaneously. In this example, there are 32 DMA hardware resources. Therefore, in this embodiment, logical DMA data transfer processing can be started up to 64 multiplexes, and actual DMA data transfer can be operated with 32 multiplexes (of course, there are n or more channels 34).

【0028】次に本実施例の特徴部分であるDMAハー
ドウェアリソースの割り当てに関して、詳細に説明す
る。
Next, the DMA hardware resource allocation, which is a feature of this embodiment, will be described in detail.

【0029】図4はハードウェアロック制御部312の
構成例を示すブロック図である。この例のハードウェア
ロック制御部312は、制御手段3121と、DMAハ
ードウェアリソース313−1〜313−nと1対1に
対応するハードウェアロックレジスタ(HWロックレジ
スタ)3122−1〜3122−nと、セレクタ312
3と、ハードウェアリソース番号レジスタ(HWリソー
ス番号レジスタ)3124とを含んでいる。
FIG. 4 is a block diagram showing a configuration example of the hardware lock control unit 312. The hardware lock control unit 312 of this example includes a control unit 3121 and hardware lock registers (HW lock registers) 3122-1 to 1222 -n corresponding to the DMA hardware resources 313-1 to 313-n on a one-to-one basis. And the selector 312
3 and a hardware resource number register (HW resource number register) 3124.

【0030】ハードウェアロックレジスタ3122−1
〜3122−nは、対応するDMAハードウェアリソー
ス313−1〜313−nが現在使用中か否か、使用中
であればどのようなDMAデータ転送で使用中であるか
を管理するレジスタであり、図5(a)に示すように、
有効ビットとDMA転送制御領域の情報とを保持する。
有効ビットは、当該ハードウェアロックレジスタに対応
するDMAハードウェアリソースが未使用であれば
“0”、使用中であれば“1”に設定される。DMA転
送制御領域の情報は、有効ビットが“1”のときだけ有
効であり、当該ハードウェアロックレジスタに対応する
DMAハードウェアリソースのロック処理を起動したD
MA転送制御領域を特定する情報が格納される。
Hardware lock register 3102-1
3122-n are registers for managing whether or not the corresponding DMA hardware resources 313-1 to 313-n are currently being used, and if so, what kind of DMA data transfer is being used. , As shown in FIG.
Holds valid bits and information on the DMA transfer control area.
The valid bit is set to “0” when the DMA hardware resource corresponding to the hardware lock register is not used, and is set to “1” when the DMA hardware resource is used. The information of the DMA transfer control area is valid only when the valid bit is "1", and the D which activates the lock processing of the DMA hardware resource corresponding to the hardware lock register is activated.
Information for specifying the MA transfer control area is stored.

【0031】ハードウェアリソース番号レジスタ312
4は、制御手段3121が実行したDMAハードウェア
リソースのロック処理の結果を格納するレジスタであ
り、図5(b)に示すように、有効ビットとDMAハー
ドウェアリソース番号とを保持する。有効ビットは、ロ
ック失敗(使用不可)のとき“0”に、ロック成功(使
用可)のとき“1”に設定される。DMAハードウェア
リソース番号は、有効ビットが“1”のときだけ有効で
あり、ロックに成功したDMAハードウェアリソースの
番号が格納される。
Hardware resource number register 312
Reference numeral 4 denotes a register for storing a result of the DMA hardware resource lock process executed by the control unit 3121, and holds a valid bit and a DMA hardware resource number as shown in FIG. The valid bit is set to “0” when the lock fails (unusable) and is set to “1” when the lock succeeds (usable). The DMA hardware resource number is valid only when the valid bit is “1”, and stores the number of the DMA hardware resource that has been successfully locked.

【0032】制御手段3121は、DMAハードウェア
リソースの割り当て制御に関する処理を実行する部分で
ある。本実施例では、データ転送方向毎にDMAハード
ウェアリソースをロックするマイクロ命令を設け、デー
タ転送方向によりマイクロ命令を使い分ける。すなわ
ち、マイクロ命令のうちの1つであるLCHR命令はn
個(本実施例の場合は32個)のDMAハードウェアリ
ソース313−1〜313−nのうちのn−1個(つま
り31個)をロックの対象とするものであり、別のマイ
クロ命令であるLCHRAはn個のDMAハードウェア
リソース313−1〜313−n全てをロックの対象と
するものである。制御手段3121は、ファームウェア
により、Input転送のときはLCHR命令を使って
DMAハードウェアリソースを1個だけロックする処理
を行い、Output転送のときはLCHRA命令を使
ってDMAハードウェアリソースを1個だけロックする
処理を行う。
The control means 3121 is a part for executing processing related to DMA hardware resource allocation control. In the present embodiment, a microinstruction for locking the DMA hardware resource is provided for each data transfer direction, and the microinstruction is selectively used depending on the data transfer direction. That is, one of the micro instructions, the LCHR instruction, is n
Of the DMA hardware resources 313-1 to 313-n (32 in this embodiment), n-1 (i.e., 31) are to be locked. One LCHRA locks all n DMA hardware resources 313-1 to 313-n. The control unit 3121 performs processing for locking only one DMA hardware resource using the LCHR instruction at the time of input transfer, and only one DMA hardware resource using the LCHRA instruction at the time of output transfer. Perform lock processing.

【0033】図6はハードウェアロック制御部312の
制御手段3121が行うDMAハードウェアリソースの
ロック処理の一例を示すフローチャートである。本実施
例の概略動作において既に説明したように、ハードウェ
アロック制御部312によるDMAハードウェアリソー
スのロック処理は、ローカルメモリ32に確保されたD
MA転送制御領域321−iにDMAデータ転送に必要
な情報が格納された後に実行される。
FIG. 6 is a flowchart showing an example of a DMA hardware resource lock process performed by the control means 3121 of the hardware lock control unit 312. As already described in the schematic operation of the present embodiment, the lock processing of the DMA hardware resource by the hardware lock control unit 312 is performed by the D lock secured in the local memory 32.
This is executed after information necessary for DMA data transfer is stored in the MA transfer control area 321-i.

【0034】制御手段3121は、まず、DMA転送制
御領域321−iに格納された情報を読み出してその中
のデータ転送先,データ転送元の情報より、Outpu
t転送か、Input転送かを判断する(ステップS
1)。そして、Input転送であれば、LCHR命令
によるロック処理を行い(ステップS2)、Outpu
t転送であれば、LCHRA命令によるロック処理を行
う(ステップS3)。
The control means 3121 first reads out the information stored in the DMA transfer control area 321-i and outputs the information from the information of the data transfer destination and the data transfer source therein.
t transfer or input transfer (step S
1). If the transfer is an input transfer, the lock processing is performed by the LCHR instruction (step S2), and the output is performed.
If the transfer is t, the lock processing is performed by the LCHRA instruction (step S3).

【0035】図7に、LCHR命令により実行される処
理の流れを示す。先ず、制御手段3121は、変数nを
1に初期設定した後、セレクタ3123でハードウェア
ロックレジスタ3122−1の出力を選択し、その有効
ビットを調べる(ステップS11)。有効ビットが使用
中を示す“1”であれば(ステップS12でNo)、変
数nを+1して2とし(ステップS15)、ステップS
11の処理に戻って、上述した処理を繰り返す。こうし
て、有効ビットが未使用を示す“0”になっているハー
ドウェアロックレジスタ3122−jを見つけると(ス
テップS12でYes)、ロック成功である。このとき
は、当該ハードウェアロックレジスタ3122−jの有
効ビットを“1”にセットすると共に、そのDMA転送
制御領域の情報にDMA転送制御領域321−iを特定
する情報をセットし、かつ、ハードウェアリソース番号
レジスタ3124の有効ビットを“1”にセットすると
共に、そのDMAハードウェアリソースの番号に当該ハ
ードウェアロックレジスタ3122−jに対応するDM
Aハードウェアリソース312−jの番号をセットする
(ステップS13)。そして、LCHR命令による処理
を終了する。
FIG. 7 shows a flow of processing executed by the LCHR instruction. First, after initially setting the variable n to 1, the control unit 3121 selects the output of the hardware lock register 3102-1 by the selector 3123 and checks its valid bit (step S11). If the valid bit is “1” indicating that it is in use (No in step S12), the variable n is incremented by 1 to 2 (step S15), and step S15 is performed.
Returning to the process of No. 11, the above process is repeated. When the hardware lock register 3122-j in which the valid bit is “0” indicating unused is found (Yes in step S12), the lock is successful. At this time, the valid bit of the hardware lock register 3122-j is set to “1”, the information for specifying the DMA transfer control area 321-i is set in the information of the DMA transfer control area, and The valid bit of the hardware resource number register 3124 is set to “1”, and the number of the DMA hardware resource corresponds to the DM corresponding to the hardware lock register 3122-j.
The number of the A hardware resource 312-j is set (step S13). Then, the process according to the LCHR instruction is completed.

【0036】他方、31番目のハードウェアロックレジ
スタ3122−31まで調べても、有効ビットが未使用
を示す“0”であるハードウェアロックレジスタが見つ
からなかった場合は(ステップS14でYes)、ロッ
ク失敗である。このときは、ハードウェアリソース番号
レジスタ3124の有効ビットを“0”にセットし(ス
テップS16)、LCHR命令による処理を終了する。
On the other hand, if the hardware lock register whose valid bit is “0” indicating unused is not found even after checking the hardware lock register 3122-31 (Yes in step S14), the lock is disabled. It is a failure. At this time, the valid bit of the hardware resource number register 3124 is set to "0" (step S16), and the process according to the LCHR instruction ends.

【0037】図8に、LCHRA命令により実行される
処理の流れを示す。処理の内容はLCHR命令により実
行される図7の処理とほぼ同じであるが、ステップS2
4における探索範囲の終値が、LCHR命令では31で
あったのに対し、LCHRAでは32になっている。従
って、LCHRA命令では、31番目のハードウェアロ
ックレジスタ3122−31まで調べても、有効ビット
が未使用を示す“0”であるハードウェアロックレジス
タが見つからなかった場合でも、最後の32番目のハー
ドウェアロックレジスタ3122−32の有効ビットが
未使用を示す“0”であれば、それに対応するDMAハ
ードウェアリソース313−32が割り当てられること
になる。
FIG. 8 shows a flow of processing executed by the LCHRA instruction. The content of the process is almost the same as the process of FIG. 7 executed by the LCHR instruction,
The final value of the search range in 4 is 31 in the LCHR instruction, but is 32 in the LCHRA. Therefore, in the LCHRA instruction, even if the hardware lock register whose valid bit is “0” indicating that the valid bit is not used is not found even when the hardware lock register 3122-31 is checked, the last 32nd hardware lock register 3122-31 is not used. If the valid bit of the wear lock register 3122-32 is "0" indicating unused, the corresponding DMA hardware resource 313-32 is allocated.

【0038】DMAハードウェアリソースのロック処理
が成功した場合、ハードウェアリソース番号レジスタ3
124の内容(特にDMAハードウェアリソースの番
号)は、ファームウェアにより、起動元のDMA転送制
御領域321−iに格納される。DMA転送制御領域3
21−iに格納されたDMAハードウェアリソースの番
号は、そのDMA転送制御領域321−iに元々格納さ
れているDMAデータ転送に必要な情報(データ転送
先,データ転送元,開始アドレス,データ転送量等)を
設定すべきDMAハードウェアリソースを特定するため
に利用される。
If the DMA hardware resource lock processing is successful, the hardware resource number register 3
The contents of 124 (particularly the numbers of the DMA hardware resources) are stored in the DMA transfer control area 321-i of the activation source by the firmware. DMA transfer control area 3
The number of the DMA hardware resource stored in the DMA transfer control area 321-i is the information necessary for the DMA data transfer (data transfer destination, data transfer source, start address, data transfer) stored in the DMA transfer control area 321-i. The amount is used to specify a DMA hardware resource to be set.

【0039】なお、ロック失敗の場合、つまりInpu
t転送時に1から31番までの31個のDMAハードウ
ェアリソースの全てが塞がっていた場合、および、Ou
tput転送時に1から32番までの32個のDMAハ
ードウェアリソースの全てが塞がっていた場合、再度、
DMAハードウェアリソースロック処理がロック成功す
るまで繰り返される。
In the case of lock failure, that is, Inpu
When all of the 31 DMA hardware resources 1 to 31 are blocked at the time of the t transfer,
If all 32 DMA hardware resources from No. 1 to No. 32 are blocked at the time of the tput transfer,
The DMA hardware resource lock process is repeated until the lock succeeds.

【0040】以上のように本実施例では、32個あるD
MAハードウェアリソース313−1〜313−32の
うちの最後のDMAハードウェアリソース313−32
はOutput転送専用のものとすることができるた
め、Input転送で全てのDMAハードウェアリソー
スが塞がることを防止できる。
As described above, in this embodiment, there are 32 D
The last DMA hardware resource 313-32 of the MA hardware resources 313-1 to 313-32
Can be dedicated to output transfer, so that all DMA hardware resources can be prevented from being blocked by input transfer.

【0041】以上の実施例では、n個(例では32個)
あるDMAハードウェアリソースのうち1個だけをOu
tput転送用に確保するようにしたが、一般的には、
m個(1≦m<n)のDMAハードウェアリソースがO
utput転送用に確保される。ここで、mの実際の値
は、Input転送とOutput転送の割合に応じて
最適化される。Input/Output転送の割合は
例えば以下のようにして調査することができる。
In the above embodiment, n (32 in the example)
Only one of the DMA hardware resources is Ou
Although reserved for tpout transfer, in general,
m (1 ≦ m <n) DMA hardware resources are O
Reserved for output transfer. Here, the actual value of m is optimized according to the ratio between the input transfer and the output transfer. The ratio of Input / Output transfer can be checked, for example, as follows.

【0042】一般に入出力処理装置にはデバッグ用機能
としてトレーサ機能がある。このトレーサ機能は、プロ
セッサ31のファームウェア311がデータ転送の処理
情報をローカルメモリ32にリアルタイムに格納する機
能である。従って、或る一定時間、このトレーサ機能を
動かし、その後、蓄えられた処理履歴情報を取り出すこ
とにより、Input/Output転送の割合を調べ
ることができる。また、中央処理装置2のソフトウェア
がデータ転送を起動した時にもOSが履歴情報を残すの
で、この情報を取り出して調べることでもInput/
Output転送の割合を調べることができる。
Generally, an input / output processing device has a tracer function as a debugging function. This tracer function is a function in which the firmware 311 of the processor 31 stores processing information of data transfer in the local memory 32 in real time. Therefore, by operating this tracer function for a certain period of time, and then extracting the stored processing history information, the ratio of Input / Output transfer can be checked. Also, since the OS keeps history information even when the software of the central processing unit 2 starts data transfer, it is also possible to take out this information and check it.
The ratio of Output transfer can be checked.

【0043】そして、Input転送の割合が比較的多
く、m=1では、Input転送でDMAハードウェア
リソースが全て塞がってしまい、Input転送に比べ
てOutput転送の方が待たされる場面が多い場合に
は、m=2(或いは2以上の値)となるように調整す
る。
When the ratio of the input transfer is relatively large, and when m = 1, all DMA hardware resources are blocked by the input transfer, and there are many cases where the output transfer is more waiting than the input transfer. , M = 2 (or a value of 2 or more).

【0044】n個あるDMAハードウェアリソースのう
ちm個だけをOutput転送用に確保する実施例で
は、前記のLCHR命令として、n個のDMAハードウ
ェアリソース313−1〜313−nのうちのn−m個
をロックの対象とするマイクロ命令が使用される。この
マイクロ命令による処理は図7と同じである。但し、ス
テップS14の判定条件が、n≧(n−m)となる。
In the embodiment in which only m of the n DMA hardware resources are reserved for output transfer, n of the n DMA hardware resources 313-1 to 313-n is used as the LCHR instruction. A microinstruction that locks m is used. The processing by this microinstruction is the same as in FIG. However, the determination condition in step S14 is n ≧ (nm).

【0045】[0045]

【発明の効果】以上説明したように本発明は、n個ある
DMAハードウェアリソースのうちn−m個のDMAハ
ードウェアリソースが全て塞がっても、m個のDMAハ
ードウェアリソースがOutput転送専用に確保され
ているため、Input転送の割合がOutput転送
より多く、またInput転送の処理時間がOutpu
t転送の処理時間より長くかかる状況の下でも、全ての
DMAハードウェアリソースがInput転送で塞がっ
てしまってOutput転送が待たされてしまうことが
なくなり、システムのスループットを向上させることが
できる。
As described above, according to the present invention, even if nm DMA hardware resources out of n DMA hardware resources are all blocked, m DMA hardware resources are dedicated to output transfer. As a result, the ratio of the input transfer is higher than that of the output transfer, and the processing time of the input transfer is output.
Even in a situation where it takes longer than the processing time for the t transfer, it is possible to prevent the output transfer from being waited due to all DMA hardware resources being blocked by the input transfer, thereby improving the system throughput.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明の一実施形態の概略構成図である。FIG. 1 is a schematic configuration diagram of an embodiment of the present invention.

【図2】本発明を適用した計算機システムの一例を示す
ブロック図である。
FIG. 2 is a block diagram illustrating an example of a computer system to which the present invention has been applied.

【図3】中央処理装置の内部構成例を示すブロック図で
ある。
FIG. 3 is a block diagram illustrating an example of an internal configuration of a central processing unit.

【図4】ハードウェアロック制御部の構成例を示すブロ
ック図である。
FIG. 4 is a block diagram illustrating a configuration example of a hardware lock control unit.

【図5】ハードウェアロックレジスタおよびハードウェ
アリソース番号レジスタの内容説明図である。
FIG. 5 is an explanatory diagram of contents of a hardware lock register and a hardware resource number register.

【図6】ハードウェアロック制御部の制御手段が行うD
MAハードウェアリソースのロック処理の一例を示すフ
ローチャートである。
FIG. 6 shows D performed by a control unit of a hardware lock control unit.
9 is a flowchart illustrating an example of an MA hardware resource lock process.

【図7】LCHR命令により実行される処理の流れを示
す図である。
FIG. 7 is a diagram showing a flow of a process executed by an LCHR instruction.

【図8】LCHRA命令により実行される処理の流れを
示す図である。
FIG. 8 is a diagram showing a flow of processing executed by an LCHRA instruction.

【符号の説明】[Explanation of symbols]

1…主記憶装置 2…中央処理装置 3…入出力処理装置 31…プロセッサ 311…ファームウェア 312…ハードウェアロック制御部 313−1〜313−n…DMAハードウェアリソース 32…ローカルメモリ 321−1〜321−m…DMA転送制御領域 33…チャネル制御部 34…チャネル 4…周辺処理装置 5…周辺装置 DESCRIPTION OF SYMBOLS 1 ... Main storage device 2 ... Central processing unit 3 ... I / O processing unit 31 ... Processor 311 ... Firmware 312 ... Hardware lock control unit 313-1 to 313-n ... DMA hardware resource 32 ... Local memory 321-1 to 321 -M DMA transfer control area 33 Channel control unit 34 Channel 4 Peripheral processing unit 5 Peripheral device

Claims (6)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】 アドレスレジスタ,データレジスタ、カ
ウンタ、各種制御フラグ及びこれらをコントロールする
制御部を含みDMA転送に必要な情報が設定されて独立
に動作する複数個のDMAハードウェアリソースを使用
して、主記憶と周辺装置との間で複数のDMAデータ転
送を並行して行うDMAデータ転送制御方法において、 前記複数個のDMAハードウェアリソースを、周辺装置
から主記憶へのInput転送および主記憶から周辺装
置へのOutput転送の両方で使用する第1のリソー
ス群と前記Output転送のみで使用する第2のリソ
ース群とに分け、Input転送時は前記第1のリソー
ス群の中から未使用のものを割り当て、Output転
送時は前記第1および第2のリソース群の中から未使用
のものを割り当てることを特徴とするDMAデータ転送
制御方法。
1. An address register, a data register, and a
Counter, various control flags, and control these
A DMA that includes a control unit and performs a plurality of DMA data transfers in parallel between a main memory and a peripheral device by using a plurality of DMA hardware resources in which information necessary for the DMA transfer is set and operates independently. In the data transfer control method, the plurality of DMA hardware resources are used only in a first resource group used for both an input transfer from a peripheral device to a main memory and an output transfer from a main memory to a peripheral device, and only for the output transfer. , And allocates unused resources from the first resource group at the time of input transfer, and allocates unused resources from the first and second resource groups at the time of output transfer. A DMA data transfer control method, wherein
【請求項2】 前記第1のリソース群の中から未使用の
DMAハードウェアリソースを1つロックする第1のマ
イクロ命令を使用してInput転送に使用するDMA
ハードウェアリソースの割り当てを行い、前記第1およ
び第2のリソース群の中から未使用のDMAハードウェ
アリソースを1つロックする第2のマイクロ命令を使用
してOutput転送に使用するDMAハードウェアリ
ソースの割り当てを行うことを特徴とする請求項記載
のDMAデータ転送制御方法。
2. A DMA used for input transfer by using a first microinstruction for locking one unused DMA hardware resource from the first resource group.
DMA hardware resources used for output transfer by using a second microinstruction for allocating hardware resources and locking one unused DMA hardware resource from the first and second resource groups 2. The DMA data transfer control method according to claim 1, further comprising :
【請求項3】 前記第2のマイクロ命令は最初に前記第
1のリソース群の中から未使用のDMAハードウェアリ
ソースを探索し、第1のリソース群の中に未使用のDM
Aハードウェアリソースが存在しない場合に前記第2の
リソース群の中から未使用のDMAハードウェアリソー
スを探索することを特徴とする請求項記載のDMAデ
ータ転送制御方法。
3. The second microinstruction first searches for unused DMA hardware resources in the first resource group, and searches for unused DM hardware resources in the first resource group.
3. The DMA data transfer control method according to claim 2, wherein an unused DMA hardware resource is searched for from the second resource group when the A hardware resource does not exist.
【請求項4】 アドレスレジスタ,データレジスタ、カ
ウンタ、各種制御フラグ及びこれらをコントロールする
制御部を含みDMA転送に必要な情報が設定されて独立
に動作するn個のDMAハードウェアリソースを有し、
中央処理装置からのデータ転送要求に基づき主記憶と周
辺装置との間で複数のDMAデータ転送を並行して行う
入出力処理装置において、 前記中央処理装置からのデータ転送要求時、要求された
データ転送が周辺装置から主記憶へのInput転送の
場合には、前記n個のDMAハードウェアリソースの内
のn−m個を探索範囲として未使用のDMAハードウェ
アリソースを探索して当該Input転送用に割り当
て、要求されたデータ転送が主記憶から周辺装置へのO
utput転送の場合には、前記n個のDMAハードウ
ェアリソースの全てを探索範囲として未使用のDMAハ
ードウェアリソースを探索して当該Output転送用
に割り当てるハードウェアロック制御部を備えることを
特徴とする入出力処理装置。
4. An address register, a data register and a power register.
Counter, various control flags, and control these
Having n DMA hardware resources including a control unit and operating independently with information required for DMA transfer being set,
An input / output processing device that performs a plurality of DMA data transfers in parallel between a main memory and a peripheral device based on a data transfer request from a central processing unit. When the transfer is an input transfer from the peripheral device to the main memory, an unused DMA hardware resource is searched for by using nm of the n DMA hardware resources as a search range, and the input DMA transfer is performed. And the requested data transfer is O from the main memory to the peripheral device.
In the case of output transfer, a hardware lock control unit is provided which searches for unused DMA hardware resources by using all of the n DMA hardware resources as a search range and allocates the DMA hardware resources for the output transfer. Input / output processing unit.
【請求項5】 前記ハードウェアロック制御部は、前記
n個のDMAハードウェアリソースの内のn−m個を探
索範囲として未使用のDMAハードウェアリソースを1
つ探索してロックする第1のマイクロ命令を使用してI
nput転送に使用するDMAハードウェアリソースの
割り当てを行い、前記n個のDMAハードウェアリソー
スの全てを探索範囲として未使用のDMAハードウェア
リソースを1つ探索してロックする第2のマイクロ命令
を使用してOutput転送に使用するDMAハードウ
ェアリソースの割り当てを行うことを特徴とする請求項
記載の入出力処理装置。
5. The hardware lock control unit sets an unused DMA hardware resource to one of the n DMA hardware resources with a search range of nm.
Using the first microinstruction to find and lock
A second microinstruction for allocating a DMA hardware resource to be used for nput transfer and searching for and locking one unused DMA hardware resource using all of the n DMA hardware resources as a search range is used. And allocating a DMA hardware resource to be used for the output transfer.
5. The input / output processing device according to 4 .
【請求項6】 前記第2のマイクロ命令は、最初に第1
番目から第n−m番目までのn−m個のDMAハードウ
ェアリソース群の中から未使用のDMAハードウェアリ
ソースを探索し、該探索で未使用のDMAハードウェア
リソースが見つからなかった場合に、残りのDMAハー
ドウェアリソース群の中から未使用のDMAハードウェ
アリソースを探索することを特徴とする請求項記載の
入出力処理装置。
6. The second micro-instruction first comprises:
When an unused DMA hardware resource is searched for from the (nm) th to (nm) th DMA hardware resource groups and no unused DMA hardware resource is found in the search, 6. The input / output processing device according to claim 5 , wherein an unused DMA hardware resource is searched for from the remaining DMA hardware resources.
JP01402199A 1999-01-22 1999-01-22 DMA data transfer control method and input / output processing device Expired - Fee Related JP3206580B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP01402199A JP3206580B2 (en) 1999-01-22 1999-01-22 DMA data transfer control method and input / output processing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP01402199A JP3206580B2 (en) 1999-01-22 1999-01-22 DMA data transfer control method and input / output processing device

Publications (2)

Publication Number Publication Date
JP2000215153A JP2000215153A (en) 2000-08-04
JP3206580B2 true JP3206580B2 (en) 2001-09-10

Family

ID=11849546

Family Applications (1)

Application Number Title Priority Date Filing Date
JP01402199A Expired - Fee Related JP3206580B2 (en) 1999-01-22 1999-01-22 DMA data transfer control method and input / output processing device

Country Status (1)

Country Link
JP (1) JP3206580B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4532450B2 (en) * 2006-09-06 2010-08-25 株式会社デンソー Engine control data processing apparatus and engine control apparatus
KR20150017601A (en) * 2013-08-07 2015-02-17 삼성전자주식회사 Storage system and method for operating the same

Also Published As

Publication number Publication date
JP2000215153A (en) 2000-08-04

Similar Documents

Publication Publication Date Title
US5524268A (en) Flexible processor-driven control of SCSI buses utilizing tags appended to data bytes to determine SCSI-protocol phases
CA2059921C (en) Scsi device drivers for multitasking operating system
US5530897A (en) System for dynamic association of a variable number of device addresses with input/output devices to allow increased concurrent requests for access to the input/output devices
JP2557199B2 (en) Interface system and method
JP3889879B2 (en) How to control virtual memory translation
WO2026046003A1 (en) Data replay method, data processing unit, network interface card, device, and storage medium
CN117806540A (en) Storage device controller and method thereof
JP4464378B2 (en) Computer system, storage system and control method for saving storage area by collecting the same data
JPH0340868B2 (en)
CN111290983A (en) USB transmission equipment and transmission method
JPH07319627A (en) External storage device
JP3206580B2 (en) DMA data transfer control method and input / output processing device
JPH1173365A (en) Method for optimizing data moving operation
EP1899827B1 (en) Device and method for executing a dma task
US5404549A (en) Method for efficient access of data stored in a nexus table using queue tag indexes in a table portion
WO2024124737A1 (en) Process switching management method in heterogeneous computing, and computing apparatus
US6775758B2 (en) Buffer page roll implementation for PCI-X block read transactions
EP1125191A1 (en) Controlling access to a primary memory
JP2001188745A (en) Control device and control method
JP2001056793A (en) Information processor
JPH0519179B2 (en)
JPS603229B2 (en) Information processing method
JPS6272051A (en) Multiple simultaneous processing controlling method in multiple processor system
JP2710219B2 (en) DMA controller
JPH1011387A (en) Information processing device

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20070706

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080706

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090706

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100706

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110706

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110706

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120706

Year of fee payment: 11

LAPS Cancellation because of no payment of annual fees