JP2015225458A - Information processing device and arbitration method - Google Patents

Information processing device and arbitration method Download PDF

Info

Publication number
JP2015225458A
JP2015225458A JP2014109396A JP2014109396A JP2015225458A JP 2015225458 A JP2015225458 A JP 2015225458A JP 2014109396 A JP2014109396 A JP 2014109396A JP 2014109396 A JP2014109396 A JP 2014109396A JP 2015225458 A JP2015225458 A JP 2015225458A
Authority
JP
Japan
Prior art keywords
masters
memory
bus
master
information processing
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
Application number
JP2014109396A
Other languages
Japanese (ja)
Other versions
JP6165104B2 (en
Inventor
嘉浩 長田
Yoshihiro Osada
嘉浩 長田
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.)
Kyocera Document Solutions Inc
Original Assignee
Kyocera Document Solutions Inc
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 Kyocera Document Solutions Inc filed Critical Kyocera Document Solutions Inc
Priority to JP2014109396A priority Critical patent/JP6165104B2/en
Publication of JP2015225458A publication Critical patent/JP2015225458A/en
Application granted granted Critical
Publication of JP6165104B2 publication Critical patent/JP6165104B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Bus Control (AREA)

Abstract

PROBLEM TO BE SOLVED: To efficiently access a memory from a plurality of processes.SOLUTION: When a controller 6 is in context with a series of consecutive accesses to a memory 2, the controller 6 limits masters 1-i which are allowed to have a bus use right among a plurality of masters 1-1 to 1-4 such that the total context number of the masters 1-i which are allowed to have a bus use right of a bus 3 is equal to or less than a prescribed number based on the configuration of a memory 2.

Description

本発明は、情報処理装置および調停方法に関するものである。   The present invention relates to an information processing apparatus and an arbitration method.

近年、マイクロプロセッサーの大容量メインメモリーとして使用されるDRAM(Dynamic Random Access Memory)のデータ転送は、SDR(Single Data Rate)、DDR(Double Data Rate)、DDR2、DDR3と進化し高速化されている。   In recent years, DRAM (Dynamic Random Access Memory) data transfer used as a large-capacity main memory of a microprocessor has evolved and speeded up to SDR (Single Data Rate), DDR (Double Data Rate), DDR2, and DDR3. .

また、コマンド発行に関するメモリーアクセスの効率化方法としては、コマンド順序入れ替え(リオーダー)、コマンドの完了を待たずに次のコマンドを発行する技術(アウトスタンディング)などがある(例えば特許文献1,2参照)。   Further, as methods for improving the efficiency of memory access related to command issuance, there are a command order change (reorder), a technique (outstanding) for issuing the next command without waiting for the completion of the command (for example, Patent Documents 1 and 2). reference).

特開2008−204487号公報JP 2008-204487 A 特表2008−541217号公報Special table 2008-541217 gazette

図6は、複数のマスターがバスを介して単一のメモリーにアクセスする情報処理装置の構成例を示すブロック図である。図6に示す装置では、マスター101−1〜101−4が、バス102に接続されており、マスター101−1〜101−4のうち、調停器103によってバス使用権を与えられたものがバス102を介してメモリーコントローラー104にコマンドを送出してメモリー105へのアクセスを行う。図7は、図6における調停器103によるバス使用権の付与の一例を示す図である。図7に示すように、調停器103は、マスター101−1〜101−4から使用要求を受け付け、所定の調停方式に基づいて、使用要求を発行した1または複数のマスター101−iに対してバス使用権を順番に与えていく。そして、マスター101−1〜101−4は、バス使用権を与えられたときにメモリー105にアクセスしつつ処理を進行させていく。   FIG. 6 is a block diagram illustrating a configuration example of an information processing apparatus in which a plurality of masters access a single memory via a bus. In the apparatus shown in FIG. 6, the masters 101-1 to 101-4 are connected to the bus 102, and the masters 101-1 to 101-4 to which the bus use right is given by the arbiter 103 are the buses. A command is sent to the memory controller 104 via 102 to access the memory 105. FIG. 7 is a diagram showing an example of granting a bus use right by the arbiter 103 in FIG. As illustrated in FIG. 7, the arbiter 103 receives use requests from the masters 101-1 to 101-4 and, based on a predetermined arbitration method, the one or more masters 101-i that have issued use requests. The bus usage rights are given in order. The masters 101-1 to 101-4 proceed with the processing while accessing the memory 105 when the bus use right is given.

メモリー105が複数のバンクを有している場合、ある処理があるバンク内の1または複数のページへのアクセスを連続的に行う場合には、ページ境界以外ではページのオープン・クローズ処理をせずに継続的にアクセスを行うことができる。このような連続的な一連のアクセスを以下、コンテクストという。   When the memory 105 has a plurality of banks, when one or more pages in a certain bank are continuously accessed, the page is not opened / closed except at the page boundary. Can be accessed continuously. Such a continuous series of accesses is hereinafter referred to as a context.

また、マスター101−1〜101−4による複数の処理がメモリー105へのアクセスを要求しても、同一バンク内のページへの複数のアクセスが発生しなければ、ページのオープン・クローズ処理をせずに継続的にメモリー105へのアクセスが行なわれる。   Even if a plurality of processes by the masters 101-1 to 101-4 request access to the memory 105, if a plurality of accesses to a page in the same bank do not occur, a page open / close process is performed. Instead, the memory 105 is continuously accessed.

しかし、複数の処理からのメモリー105へのアクセスのコンテクスト数が多くなると、ページのオープン・クローズ処理が頻繁に発生するため、効率よくメモリーアクセスを行うことが困難になってしまう。   However, when the number of contexts for accessing the memory 105 from a plurality of processes increases, page open / close processes frequently occur, making it difficult to efficiently access the memory.

このような装置において、上述のリオーダー、アウトスタンディングなどでメモリーアクセスの効率を高くすることも考えられるが、リオーダーによってメモリーアクセスの効率を高くしようとすると、長期間のコマンド列の参照が必要になり、リードコマンド発行からデータ受領までのレイテンシーが増大してしまう。また、レイテンシーの増大に対抗してスループットを高くするために、アウトスタンディングを導入する場合、回路規模が大きくなってしまう。   In such a device, it may be possible to increase the efficiency of memory access by the above-mentioned reordering, standing-out, etc., but it is necessary to refer to a command string for a long period of time when trying to increase the efficiency of memory access by reordering Thus, the latency from issuing the read command to receiving the data increases. In addition, in order to increase the throughput against the increase in latency, when the standing is introduced, the circuit scale becomes large.

本発明は、上記の問題に鑑みてなされたものであり、複数の処理からのメモリーへのアクセスを効率よく行う情報処理装置および調停方法を得ることを目的とする。   The present invention has been made in view of the above problems, and an object thereof is to obtain an information processing apparatus and an arbitration method that efficiently access a memory from a plurality of processes.

本発明に係る情報処理装置は、複数の処理を実行する複数のマスターと、前記複数のマスターに共用されるメモリーと、バスと、前記複数のマスターから前記バスを介して供給されるコマンドに従って前記メモリーに対するアクセスを実行するメモリーコントローラーと、前記バスのバス使用権を与える調停器と、前記メモリーに対する連続的な一連のアクセスをコンテクストとし、前記バス使用権の付与を許可されるマスターの合計コンテクスト数が前記メモリーの構成に基づく所定の数以下となるように、前記複数のマスターのうち、前記バス使用権の付与を許可されるマスターを制限するコントローラーとを備える。   The information processing apparatus according to the present invention includes a plurality of masters that execute a plurality of processes, a memory shared by the plurality of masters, a bus, and a command supplied from the plurality of masters via the bus. The total number of contexts of the memory controller that executes access to the memory, the arbiter that gives the bus use right of the bus, and the master that is allowed to grant the bus use right, with a continuous series of accesses to the memory as contexts And a controller that restricts a master that is permitted to be given the bus use right among the plurality of masters so that the number of masters is less than a predetermined number based on the configuration of the memory.

本発明に係る調停方法は、複数の処理を実行する複数のマスターからバスを介して供給されるコマンドに従ってメモリーコントローラーでメモリーに対するアクセスを実行する際に、前記複数のマスターのいずれかに対して前記バスのバス使用権を与え、さらに、前記メモリーに対する連続的な一連のアクセスをコンテクストとし、前記バス使用権の付与を許可されるマスターの合計コンテクスト数が前記メモリーの構成に基づく所定の数以下となるように、前記複数のマスターのうち、前記バス使用権の付与を許可されるマスターを制限する。   In the arbitration method according to the present invention, when the memory controller performs access to the memory in accordance with a command supplied via a bus from a plurality of masters that execute a plurality of processes, the arbitration method performs any of the plurality of masters. A bus use right is granted, and a continuous series of accesses to the memory is a context, and the total number of contexts of the master permitted to be granted the bus use right is less than a predetermined number based on the configuration of the memory. As described above, among the plurality of masters, the masters permitted to be given the bus use right are limited.

本発明によれば、複数の処理からのメモリーへのアクセスが効率よく行われる。   According to the present invention, memory access from a plurality of processes is efficiently performed.

図1は、本発明の実施の形態1に係る情報処理装置の構成を示すブロック図である。FIG. 1 is a block diagram showing the configuration of the information processing apparatus according to Embodiment 1 of the present invention. 図2は、図1におけるマスター1−i内の処理でのコンテクストについて説明する図である。FIG. 2 is a diagram for explaining the context in the processing in the master 1-i in FIG. 図3は、実施の形態1に係る情報処理装置における調停器5によるバス使用権の付与について説明する図である。FIG. 3 is a diagram for explaining assignment of a bus use right by the arbiter 5 in the information processing apparatus according to the first embodiment. 図4は、実施の形態2におけるマスターの集合の一例を示す図である。FIG. 4 is a diagram illustrating an example of a set of masters according to the second embodiment. 図5は、本発明の実施の形態3に係る情報処理装置の構成を示すブロック図である。FIG. 5 is a block diagram showing the configuration of the information processing apparatus according to Embodiment 3 of the present invention. 図6は、複数のマスターがバスを介して単一のメモリーにアクセスする情報処理装置の構成例を示すブロック図である。FIG. 6 is a block diagram illustrating a configuration example of an information processing apparatus in which a plurality of masters access a single memory via a bus. 図7は、図6における調停器103によるバス使用権の付与の一例を示す図である。FIG. 7 is a diagram showing an example of granting a bus use right by the arbiter 103 in FIG.

以下、図に基づいて本発明の実施の形態を説明する。   Hereinafter, embodiments of the present invention will be described with reference to the drawings.

実施の形態1. Embodiment 1 FIG.

図1は、本発明の実施の形態1に係る情報処理装置の構成を示すブロック図である。   FIG. 1 is a block diagram showing the configuration of the information processing apparatus according to Embodiment 1 of the present invention.

図1に示す装置は、複数のマスター1−1〜1−4、メモリー2、バス3、メモリーコントローラー4、調停器5、コントローラー6、およびセレクター7を備える。   The apparatus shown in FIG. 1 includes a plurality of masters 1-1 to 1-4, a memory 2, a bus 3, a memory controller 4, an arbiter 5, a controller 6, and a selector 7.

複数のマスター1−1〜1−4は、それぞれ、メモリー2に対してDMA(Direct Memory Access)回路11でデータのリードおよび/またはライトを行いつつ複数の処理を実行する処理回路である。   Each of the plurality of masters 1-1 to 1-4 is a processing circuit that performs a plurality of processes while reading and / or writing data to / from the memory 2 by a DMA (Direct Memory Access) circuit 11.

メモリー2は、複数のマスター1−1〜1−4に共用されるメモリーであって、例えば、DRAMである。   The memory 2 is a memory shared by a plurality of masters 1-1 to 1-4, and is, for example, a DRAM.

実施の形態1では、メモリー2は、複数のバンクを有し、各バンクにおいて複数のページを有する。   In the first embodiment, the memory 2 has a plurality of banks, and each bank has a plurality of pages.

バス3は、メモリー2のメモリーバスである。   The bus 3 is a memory bus for the memory 2.

メモリーコントローラー4は、複数のマスター1−1〜1−4からバス3を介して供給されるコマンドに従ってメモリー2に対するアクセスを実行する。   The memory controller 4 executes access to the memory 2 in accordance with a command supplied from the plurality of masters 1-1 to 1-4 via the bus 3.

調停器5は、バス3の使用要求に応じて、所定の調停方式でバス3のバス使用権を排他的に与える。   The arbiter 5 exclusively gives the bus use right of the bus 3 by a predetermined arbitration method in response to the use request of the bus 3.

ここで、マスター1−i内の処理でのコンテクストについて説明する。図2は、図1におけるマスター1−i内の処理でのコンテクストについて説明する図である。例えば同一のページ内や連続するページに跨って、連続したあるいは近接したアドレスに対して連続的に行う一連のアクセスが1つのコンテクストとなる。   Here, the context in the process in the master 1-i will be described. FIG. 2 is a diagram for explaining the context in the processing in the master 1-i in FIG. For example, a series of accesses that are continuously performed on addresses that are continuous or close to each other within the same page or across consecutive pages constitute one context.

例えば図2に示すように、マスター1−1の処理において、バンク#0のページ#0からの連続的なリード、並びにバンク#1のページ#5およびバンク#2のページ#6への連続的なライトが実行される場合、その連続的なリードが1つのコンテクストとなり、その連続的なライトが1つのコンテクストとなり、マスター1−1の処理におけるコンテクスト数は、合計で2となる。例えば、マスター1−1の処理において、この連続的なリードと並行して別のページからの連続的なリードが別途実行される場合には、コンテクスト数は1だけ増加する。   For example, as shown in FIG. 2, in the processing of the master 1-1, continuous reading from page # 0 in bank # 0 and continuous access to page # 5 in bank # 1 and page # 6 in bank # 2 When a simple write is executed, the continuous read becomes one context, the continuous write becomes one context, and the total number of contexts in the processing of the master 1-1 is 2. For example, in the processing of the master 1-1, when a continuous read from another page is separately executed in parallel with the continuous read, the number of contexts increases by one.

コントローラー6は、バス使用権の付与を許可されるマスター1−iの合計コンテクスト数がメモリー2の構成に基づく所定の数以下となるように、複数のマスター1−1〜1−4のうち、バス使用権の付与を許可されるマスター1−iを制限する。   The controller 6 includes a plurality of masters 1-1 to 1-4 such that the total number of contexts of the master 1-i that is permitted to grant the bus use right is equal to or less than a predetermined number based on the configuration of the memory 2. The master 1-i permitted to grant the bus use right is restricted.

実施の形態1では、コントローラー6は、セレクター7を使用して、バス使用権の付与を許可されるマスター1−iのみをバス3に接続する。   In the first embodiment, the controller 6 uses the selector 7 to connect only the master 1-i permitted to be granted the right to use the bus to the bus 3.

また、実施の形態1では、コントローラー6は、バス使用権の付与を許可されるマスター1−iの使用帯域の合計が、メモリー2の帯域を超えない条件下で最大となるように、バス使用権の付与を許可されるマスター1−iを選択する。   Further, in the first embodiment, the controller 6 uses the bus so that the total used bandwidth of the master 1-i permitted to be granted the right to use the bus is maximized under a condition that does not exceed the bandwidth of the memory 2. The master 1-i that is permitted to grant the right is selected.

さらに、実施の形態1では、コントローラー6は、バス使用権の付与を許可されるマスター1−iの合計コンテクスト数がメモリー2の構成に基づき特定される許容コンテクスト数以下となるように、バス使用権の付与を許可されるマスター1−iを選択する。   Furthermore, in the first embodiment, the controller 6 uses the bus so that the total number of contexts of the master 1-i permitted to be granted the right to use the bus is equal to or less than the allowable number of contexts specified based on the configuration of the memory 2. The master 1-i that is permitted to grant the right is selected.

ここでは、許容コンテクスト数は、メモリー2のバンク数である。   Here, the allowable number of contexts is the number of banks of the memory 2.

なお、メモリー2が複数のランクを有する場合には、許容コンテクスト数は、メモリー2のバンク数とランク数との積とされる。   When the memory 2 has a plurality of ranks, the allowable number of contexts is a product of the number of banks of the memory 2 and the number of ranks.

次に、実施の形態1に係る情報処理装置の動作について説明する。   Next, the operation of the information processing apparatus according to the first embodiment will be described.

図3は、実施の形態1に係る情報処理装置における調停器5によるバス使用権の付与について説明する図である。   FIG. 3 is a diagram for explaining assignment of a bus use right by the arbiter 5 in the information processing apparatus according to the first embodiment.

コントローラー6は、マスター1−1〜1−4のそれぞれのコンテクスト数に基づいて、最初に、バス使用権の付与を許可されるマスターとして、2つのマスター1−1,1−4を選択し、調停器5に通知する。なお、実施の形態1では、コントローラー6は、マスター1−1〜1−4のそれぞれのコンテクスト数のデータを予め記憶している。   Based on the number of contexts of each of the masters 1-1 to 1-4, the controller 6 first selects two masters 1-1 and 1-4 as masters that are permitted to be granted bus use rights. Notify the arbiter 5. In the first embodiment, the controller 6 stores data of the number of contexts of each of the masters 1-1 to 1-4 in advance.

そして、マスター1−1の処理が開始され(時刻T1)、マスター1−4の処理が開始され(時刻T2)、マスター1−1,1−4からの使用要求を受け付けると、調停器5は、マスター1−1,1−4に対して適宜バス使用権を与える。   And the process of the master 1-1 is started (time T1), the process of the master 1-4 is started (time T2), and when the use request from the masters 1-1 and 1-4 is received, the arbiter 5 The master 1-1 and 1-4 are given the right to use the bus as appropriate.

その後、マスター1−1の処理が終了すると(時刻T3)、コントローラー6は、マスター1−2,1−3,1−4のコンテクスト数に基づいて、バス使用権の付与を許可されるマスターとして、残りのマスター1−2,1−3のいずれかを追加可能か否かを判定する。ここでは、コントローラー4は、マスター1−2を追加可能と判定し、マスター1−2を追加的に選択し、調停器5に通知する。そして、調停器5は、マスター1−2,1−4に対して適宜バス使用権を与える。   After that, when the processing of the master 1-1 is completed (time T3), the controller 6 becomes a master that is permitted to grant the bus use right based on the number of contexts of the masters 1-2, 1-3, and 1-4. Then, it is determined whether or not any of the remaining masters 1-2 and 1-3 can be added. Here, the controller 4 determines that the master 1-2 can be added, additionally selects the master 1-2, and notifies the arbiter 5 of the master 1-2. Then, the arbiter 5 gives the right to use the bus to the masters 1-2 and 1-4 as appropriate.

なお、コントローラー6は、マスター1−1の処理の終了を、マスター1−1からの明示的な信号に基づいて検出してもよいし、マスター1−1からのメモリーアクセスが所定時間無い場合にマスター1−1の処理が終了したと判定してもよい。   The controller 6 may detect the end of the process of the master 1-1 based on an explicit signal from the master 1-1, or when there is no memory access from the master 1-1 for a predetermined time. You may determine with the process of the master 1-1 having been complete | finished.

また、この時点で、コントローラー6は、バス使用権の付与を許可されるマスターとして、残りのマスター1−2,1−3のいずれも追加可能ではないと判定した場合、少なくとも、マスター1−4の処理終了まで残りのマスター1−2,1−3のいずれも、バス使用権の付与を許可されるマスターとしない。   At this time, if the controller 6 determines that neither of the remaining masters 1-2 and 1-3 can be added as a master permitted to be granted the bus use right, at least the master 1-4. Neither of the remaining masters 1-2 and 1-3 until the end of the process is a master that is permitted to be granted bus use rights.

その後、マスター1−4の処理が終了すると(時刻T4)、コントローラー6は、マスター1−2,1−3のコンテクスト数に基づいて、バス使用権の付与を許可されるマスターとして、残りのマスター1−3を追加可能か否かを判定する。ここでは、コントローラー4は、マスター1−3を追加可能と判定し、マスター1−3を追加的に選択し、調停器5に通知する。そして、調停器5は、マスター1−2,1−3に対して適宜バス使用権を与える。   After that, when the processing of the master 1-4 is completed (time T4), the controller 6 determines the remaining masters as masters that are permitted to grant the bus use right based on the number of contexts of the masters 1-2 and 1-3. It is determined whether or not 1-3 can be added. Here, the controller 4 determines that the master 1-3 can be added, additionally selects the master 1-3, and notifies the arbiter 5 of the master 1-3. Then, the arbiter 5 gives the right to use the bus to the masters 1-2 and 1-3 as appropriate.

以上のように、上記実施の形態1によれば、コントローラー6は、メモリー2に対する連続的な一連のアクセスをコンテクストとしたとき、コントローラー6は、バス3のバス使用権の付与を許可されるマスター1−iの合計コンテクスト数がメモリー2の構成に基づく所定の数以下となるように、複数のマスター1−1〜1−4のうち、バス使用権の付与を許可されるマスター1−iを制限する。   As described above, according to the first embodiment, when the controller 6 uses a series of continuous accesses to the memory 2 as a context, the controller 6 is permitted to grant the bus use right of the bus 3. Among the plurality of masters 1-1 to 1-4, the master 1-i that is granted the right to use the bus is selected so that the total number of contexts 1-i is not more than a predetermined number based on the configuration of the memory 2. Restrict.

これにより、複数の処理からのメモリー2へのアクセスが効率よく行われる。つまり、メモリー2から見ると、複数のマスター1−iにより並行して実行されるメモリーアクセスのコンテクスト数が低く抑えられるため、ページのオープン・クローズを実行する頻度が少なくなり、効率よくメモリーアクセスが実行される。   Thereby, access to the memory 2 from a plurality of processes is efficiently performed. In other words, when viewed from the memory 2, the number of contexts of memory access executed in parallel by a plurality of masters 1-i is kept low, so the frequency of executing page open / close is reduced, and memory access is efficiently performed. Executed.

実施の形態2. Embodiment 2. FIG.

実施の形態2に係る情報処理装置では、コントローラー6は、複数のマスター1−1〜1−4を複数の集合に予め振り分け、調停器5は、バス使用権の付与を許可されるマスター1−iを、集合ごとにまとめて切り換える。   In the information processing apparatus according to the second embodiment, the controller 6 allocates a plurality of masters 1-1 to 1-4 in advance to a plurality of sets, and the arbiter 5 is a master 1-permitted to grant bus use rights. i is switched collectively for each set.

具体的には、コントローラー6は、各集合内においてバス使用権の付与を許可されるマスターの合計コンテクスト数が上述の所定の数以下となるように、複数のマスター1−1〜1−4を複数の集合に予め振り分ける。   Specifically, the controller 6 sets the plurality of masters 1-1 to 1-4 so that the total number of contexts of the masters that are permitted to grant the bus use right in each set is equal to or less than the predetermined number described above. Assign to multiple sets in advance.

そして、コントローラー6は、現時点でバス使用権の付与を許可されている集合内のすべてのマスター1−iの処理が終了した時点で、別の集合のマスター1−jを、バス使用権の付与を許可されるマスターとし、調停器5に通知する。   Then, the controller 6 grants the master 1-j of another set to the bus use right when the processing of all the masters 1-i in the set that is currently granted the right to use the bus is completed. And the arbitrator 5 is notified.

図4は、実施の形態2におけるマスターの集合の一例を示す図である。例えば、図4に示すように、集合#1は、マスター1−1,1−4を含み、集合#2は、マスター1−2,1−3を含む。この場合、まず集合#1のマスター1−1,1−4が、バス使用権の付与を許可されるマスターとして選択され、マスター1−1,1−4の両方の処理が終了した時点(時刻T11)で、バス使用権の付与を許可されるマスターが、集合#2のマスター1−2,1−3に切り換えられる。   FIG. 4 is a diagram illustrating an example of a set of masters according to the second embodiment. For example, as shown in FIG. 4, the set # 1 includes masters 1-1 and 1-4, and the set # 2 includes masters 1-2 and 1-3. In this case, first, the masters 1-1 and 1-4 of the set # 1 are selected as masters to which the bus use right is granted, and the processing (time of both) of the masters 1-1 and 1-4 is completed. At T11), the master permitted to be given the bus use right is switched to the masters 1-2 and 1-3 of the set # 2.

なお、実施の形態2に係る情報処理装置のその他の構成および動作については実施の形態1と同様であるので、その説明を省略する。   Note that other configurations and operations of the information processing apparatus according to the second embodiment are the same as those of the first embodiment, and thus description thereof is omitted.

以上のように、上記実施の形態2によれば、例えば、複数のマスター1−iの処理間でデータ依存がある場合(例えば一方の処理後のデータを他方が処理する場合)、そのようなマスター1−iを1つの集合とすることで、デッドロックや遅延の発生が減る。   As described above, according to the second embodiment, for example, when there is data dependence between processes of a plurality of masters 1-i (for example, when the data after one process is processed by the other), By making the master 1-i into one set, the occurrence of deadlock and delay is reduced.

実施の形態3. Embodiment 3 FIG.

図5は、本発明の実施の形態3に係る情報処理装置の構成を示すブロック図である。   FIG. 5 is a block diagram showing the configuration of the information processing apparatus according to Embodiment 3 of the present invention.

実施の形態3では、コントローラー6は、複数のマスター21−1〜21−4のうち、バス使用権の付与を許可されるマスターを所定の固定数以下に制限する。この固定数は、既知である複数のマスター21−1〜21−4のコンテクスト数およびメモリー2の構成から特定される、上述のように同時に選択される、バス使用権の付与を許可されるマスターの数の最大値である。   In the third embodiment, the controller 6 limits the masters that are permitted to be given the right to use the bus among a plurality of masters 21-1 to 21-4 to a predetermined fixed number or less. This fixed number is determined from the number of known masters 21-1 to 21-4 and the configuration of the memory 2, and is selected at the same time as described above. Is the maximum number of.

つまり、この固定数は、同時に選択される、バス使用権の付与を許可されるマスターの数の上限値となる。   In other words, this fixed number is the upper limit value of the number of masters that are selected at the same time and that are permitted to be given the right to use the bus.

マスター21−1〜21−4は、マスター1−1〜1−4と同様であるが、DMA回路11を有さない。その代わりに、複数のマスター21−1〜21−4の数(ここでは4)より少なく上述の固定数(ここでは2)と同数のDMA回路22−1,22−2が、バス使用権の付与を許可されるマスター21−iにおけるメモリーアクセスを代行する。   The masters 21-1 to 21-4 are the same as the masters 1-1 to 1-4, but do not have the DMA circuit 11. Instead, the same number of DMA circuits 22-1 and 22-2 as the above-mentioned fixed number (here 2) is less than the number of masters 21-1 to 21-4 (here 4). Acting as a proxy for memory access in the master 21-i that is permitted to be granted

DMA回路22−1,22−2は、バス3に接続され、さらに、DMA回路22−1,22−2にはセレクター7を介してマスター21−1〜21−4が接続される。   The DMA circuits 22-1 and 22-2 are connected to the bus 3, and the masters 21-1 to 21-4 are connected to the DMA circuits 22-1 and 22-2 via the selector 7.

そして、コントローラー6は、現時点のバス使用権の付与を許可されるマスター21−iをセレクター7で選択し、DAM回路22−1,22−2に接続する。   Then, the controller 6 selects the master 21-i permitted to be given the current bus use right by the selector 7, and connects it to the DAM circuits 22-1 and 22-2.

調停器5は、所定の調停方式に基づいて、DMA回路22−1,22−2のいずれかに対してバス3のバス使用権を与える。   The arbiter 5 gives the right to use the bus 3 to either the DMA circuit 22-1 or 22-2 based on a predetermined arbitration method.

なお、実施の形態3に係る情報処理装置のその他の構成および動作については実施の形態1と同様であるので、その説明を省略する。   Note that other configurations and operations of the information processing apparatus according to the third embodiment are the same as those in the first embodiment, and thus the description thereof is omitted.

以上のように、上記実施の形態3によれば、上述の固定数分のDMA回路22−1,22−2のみが実装されるので、回路規模が小さくて済む。   As described above, according to the third embodiment, since only the fixed number of DMA circuits 22-1 and 22-2 are mounted, the circuit scale can be reduced.

なお、上述の各実施の形態は、本発明の好適な例であるが、本発明は、これらに限定されるものではなく、本発明の要旨を逸脱しない範囲において、種々の変形、変更が可能である。   Each embodiment described above is a preferred example of the present invention, but the present invention is not limited to these, and various modifications and changes can be made without departing from the scope of the present invention. It is.

例えば、上記実施の形態1,2に係る情報処理装置は、複数のマスター1〜1〜1−4が、それぞれ、自己の実行する処理のコンテクスト数をコントローラー6に動的に通知し、コントローラー6が、複数のマスター1−1〜1−4から通知されたコンテクスト数の合計を計算し、コンテクスト数の合計がメモリー2の構成に基づく所定の数以下となるように、バス使用権の付与を許可されるマスターを選択するようにしてもよい。   For example, in the information processing apparatuses according to the first and second embodiments, the plurality of masters 1 to 1 to 1-4 dynamically notify the controller 6 of the number of contexts of processing performed by the masters 1 to 1 to 4. Calculates the total number of contexts notified from the plurality of masters 1-1 to 1-4, and grants the right to use the bus so that the total number of contexts is equal to or less than a predetermined number based on the configuration of the memory 2. You may make it select the master permitted.

さらに、この場合、マスター1〜1〜1−4が、コンテクスト数をコントローラー6に動的に通知する際に、1つのコンテクストがバンク境界(つまり、バンク境界であるページ境界)を跨ぐ場合には、バンクごとに別々の異なるコンテクストとみなし、そのコンテクストについてのコンテクスト数を2とする(つまり1だけ増加させる)ようにしてもよい。   Furthermore, in this case, when the masters 1-1 to 1-4 dynamically notify the controller 6 of the number of contexts, when one context crosses a bank boundary (that is, a page boundary that is a bank boundary). Alternatively, the banks may be regarded as different contexts, and the number of contexts for the context may be set to 2 (that is, increased by 1).

さらに、この場合、動的に通知されたコンテクスト数の合計が、メモリー2についての許容コンテクスト数を超えた場合には、現時点のバス使用権の付与を許可されるマスターから、少なくとも1つのマスターを除外するようにしてもよい。   Furthermore, in this case, when the total number of contexts notified dynamically exceeds the allowable number of contexts for the memory 2, at least one master is selected from the masters that are permitted to grant the current bus use right. You may make it exclude.

また、この場合、動的に通知されたコンテクスト数の合計が、メモリー2についての許容コンテクスト数より少ない場合において、現時点においてバス使用権の付与を許可されるマスター以外のマスターを、バス使用権の付与を許可されるマスターに追加しても、コンテクスト数の合計が許容コンテクスト数を超えないときには、現時点においてバス使用権の付与を許可されるマスター以外のマスターを、バス使用権の付与を許可されるマスターに追加してもよい。   In this case, when the total number of dynamically notified contexts is smaller than the allowable number of contexts for the memory 2, a master other than the master that is currently permitted to grant the bus use right is assigned to the bus use right. If the total number of contexts does not exceed the allowable number of contexts even if they are added to the masters that are allowed to be granted, the masters other than the masters that are currently allowed to grant bus usage rights are allowed to grant bus usage rights. May be added to the master.

また、上記実施の形態2において、所定時間(例えば10ミリ秒)ごとに、現時点のバス使用権を付与可能なマスターの集合を強制的に切り換えるようにしてもよい。   In the second embodiment, the set of masters to which the current bus use right can be granted may be forcibly switched every predetermined time (for example, 10 milliseconds).

さらに、上記実施の形態1〜3において、メモリーコントローラー4が、リオーダー機能およびアウトスタンディング機能を有していてもよい。つまり、上記実施の形態1〜3による調停方式は、リオーダー機能、アウトスタンディング機能などと併用可能であるため、メモリーアクセス効率をより高くすることができる。   Furthermore, in the first to third embodiments, the memory controller 4 may have a reorder function and an standing function. That is, the arbitration method according to the first to third embodiments can be used in combination with the reorder function, the standing function, and the like, so that the memory access efficiency can be further increased.

本発明は、例えば、複数の画像処理回路をマスターとして備える画像処理装置に適用可能である。   The present invention can be applied to, for example, an image processing apparatus including a plurality of image processing circuits as a master.

1−1〜1−4,21−1〜21−4 マスター
2 メモリー
3 バス
4 メモリーコントローラー
5 調停器
6 コントローラー
22−1,22−2 DMA回路(メモリーアクセス回路の一例)
1-1 to 1-4, 21-1 to 21-4 Master 2 Memory 3 Bus 4 Memory controller 5 Arbiter 6 Controller 22-1 and 22-2 DMA circuit (an example of a memory access circuit)

Claims (9)

複数の処理を実行する複数のマスターと、
前記複数のマスターに共用されるメモリーと、
バスと、
前記複数のマスターから前記バスを介して供給されるコマンドに従って前記メモリーに対するアクセスを実行するメモリーコントローラーと、
前記バスのバス使用権を与える調停器と、
前記メモリーに対する連続的な一連のアクセスをコンテクストとし、前記バス使用権の付与を許可されるマスターの合計コンテクスト数が前記メモリーの構成に基づく所定の数以下となるように、前記複数のマスターのうち、前記バス使用権の付与を許可されるマスターを制限するコントローラーと、
を備えることを特徴とする情報処理装置。
With multiple masters performing multiple processes,
Memory shared by the plurality of masters;
With bus,
A memory controller that executes access to the memory according to a command supplied from the plurality of masters via the bus;
An arbiter that gives the right to use the bus;
Among the plurality of masters, a series of continuous accesses to the memory is used as a context, and the total number of masters allowed to be granted the bus use right is equal to or less than a predetermined number based on the configuration of the memory. , A controller that restricts masters that are allowed to grant the bus use right,
An information processing apparatus comprising:
前記コントローラーは、前記バス使用権の付与を許可されるマスターの使用帯域の合計が、前記メモリーの帯域を超えない条件下で最大となるように、前記バス使用権の付与を許可されるマスターを選択することを特徴とする請求項1記載の情報処理装置。   The controller determines a master that is permitted to grant the bus usage right so that the total usage bandwidth of the master that is permitted to grant the bus usage right is maximized under a condition that does not exceed the bandwidth of the memory. The information processing apparatus according to claim 1, wherein the information processing apparatus is selected. 前記コントローラーは、前記バス使用権の付与を許可されるマスターの合計コンテクスト数が前記メモリーの構成に基づき特定される許容コンテクスト数以下となるように、前記バス使用権の付与を許可されるマスターを選択することを特徴とする請求項1または請求項2記載の情報処理装置。   The controller determines a master that is permitted to grant the bus usage right so that a total number of contexts of the master that is permitted to grant the bus usage right is equal to or less than an allowable number of contexts specified based on the configuration of the memory. The information processing apparatus according to claim 1, wherein the information processing apparatus is selected. 前記許容コンテクスト数は、前記メモリーのバンク数であることを特徴とする請求項3記載の情報処理装置。   4. The information processing apparatus according to claim 3, wherein the allowable number of contexts is the number of banks of the memory. 前記許容コンテクスト数は、前記メモリーのバンク数とランク数との積であることを特徴とする請求項3記載の情報処理装置。   4. The information processing apparatus according to claim 3, wherein the allowable number of contexts is a product of the number of banks of the memory and the number of ranks. 前記複数のマスターは、それぞれ、自己の実行する前記処理のコンテクスト数を前記コントローラーに通知し、
前記コントローラーは、前記複数のマスターから通知された前記コンテクスト数の合計を計算し、前記コンテクスト数の合計が前記メモリーの構成に基づく所定の数以下となるように、前記バス使用権の付与を許可されるマスターを選択すること、
を特徴とする請求項1から請求項5のうちのいずれか1項記載の情報処理装置。
Each of the plurality of masters notifies the controller of the number of contexts of the processing to be executed by the master,
The controller calculates the total number of contexts notified from the plurality of masters, and grants the right to use the bus so that the total number of contexts is equal to or less than a predetermined number based on the configuration of the memory. Selecting a master to be played,
The information processing apparatus according to any one of claims 1 to 5, wherein
前記コントローラーは、各集合内において前記バス使用権の付与を許可されるマスターの合計コンテクスト数が前記メモリーの構成に基づく所定の数以下となるように前記複数のマスターを複数の集合に振り分け、前記バス使用権の付与を許可されるマスターを、前記集合ごとにまとめて切り換えること、
を特徴とする請求項1記載の情報処理装置。
The controller distributes the plurality of masters to a plurality of sets so that the total number of contexts of the masters permitted to grant the bus use right in each set is equal to or less than a predetermined number based on the configuration of the memory. Switching masters that are allowed to grant bus usage rights together for each set,
The information processing apparatus according to claim 1.
前記バス使用権の付与を許可されるマスターにおけるメモリーアクセスを代行する複数のメモリーアクセス回路をさらに備え、
前記コントローラーは、前記複数のマスターのうち、前記バス使用権の付与を許可されるマスターを所定の固定数以下に制限し、
前記メモリーアクセス回路の数は、前記複数のマスターの数より少なく、かつ前記固定数と同一であり、
前記調停器は、前記複数のメモリーアクセス回路のいずれかに対して前記バスのバス使用権を与えること、
を特徴とする請求項1記載の情報処理装置。
A plurality of memory access circuits acting on behalf of memory access in the master permitted to grant the bus use right;
The controller restricts a master permitted to be given the bus use right from the plurality of masters to a predetermined fixed number or less,
The number of the memory access circuits is less than the number of the plurality of masters and is the same as the fixed number;
The arbiter gives a bus use right of the bus to any of the plurality of memory access circuits;
The information processing apparatus according to claim 1.
複数の処理を実行する複数のマスターからバスを介して供給されるコマンドに従ってメモリーコントローラーでメモリーに対するアクセスを実行する際に、前記複数のマスターのいずれかに対して前記バスのバス使用権を与える調停方法であって、
前記メモリーに対する連続的な一連のアクセスをコンテクストとし、前記バス使用権の付与を許可されるマスターの合計コンテクスト数が前記メモリーの構成に基づく所定の数以下となるように、前記複数のマスターのうち、前記バス使用権の付与を許可されるマスターを制限すること、
を特徴とする調停方法。
Arbitration that grants the bus use right of the bus to one of the plurality of masters when the memory controller executes access to the memory in accordance with a command supplied from the plurality of masters that executes a plurality of processes via the bus A method,
Among the plurality of masters, a series of continuous accesses to the memory is used as a context, and the total number of masters allowed to be granted the bus use right is equal to or less than a predetermined number based on the configuration of the memory. Limiting the masters allowed to grant the bus use right,
An arbitration method characterized by:
JP2014109396A 2014-05-27 2014-05-27 Information processing apparatus and arbitration method Expired - Fee Related JP6165104B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014109396A JP6165104B2 (en) 2014-05-27 2014-05-27 Information processing apparatus and arbitration method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014109396A JP6165104B2 (en) 2014-05-27 2014-05-27 Information processing apparatus and arbitration method

Publications (2)

Publication Number Publication Date
JP2015225458A true JP2015225458A (en) 2015-12-14
JP6165104B2 JP6165104B2 (en) 2017-07-19

Family

ID=54842162

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014109396A Expired - Fee Related JP6165104B2 (en) 2014-05-27 2014-05-27 Information processing apparatus and arbitration method

Country Status (1)

Country Link
JP (1) JP6165104B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017126217A (en) * 2016-01-14 2017-07-20 京セラドキュメントソリューションズ株式会社 Data processor

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6391757A (en) * 1986-09-25 1988-04-22 テクトロニックス・インコーポレイテッド Memory access apparatus
JP2007018222A (en) * 2005-07-07 2007-01-25 Matsushita Electric Ind Co Ltd Memory access control circuit
JP2011034324A (en) * 2009-07-31 2011-02-17 Canon Inc Memory system
JP2011034495A (en) * 2009-08-05 2011-02-17 Panasonic Corp Memory access device and video processing system
US20110258367A1 (en) * 2010-04-19 2011-10-20 Kabushiki Kaisha Toshiba Memory system, control method thereof, and information processing apparatus

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6391757A (en) * 1986-09-25 1988-04-22 テクトロニックス・インコーポレイテッド Memory access apparatus
JP2007018222A (en) * 2005-07-07 2007-01-25 Matsushita Electric Ind Co Ltd Memory access control circuit
JP2011034324A (en) * 2009-07-31 2011-02-17 Canon Inc Memory system
JP2011034495A (en) * 2009-08-05 2011-02-17 Panasonic Corp Memory access device and video processing system
US20120121008A1 (en) * 2009-08-05 2012-05-17 Panasonic Corporation Memory access device and video processing system
US20110258367A1 (en) * 2010-04-19 2011-10-20 Kabushiki Kaisha Toshiba Memory system, control method thereof, and information processing apparatus
JP2011227664A (en) * 2010-04-19 2011-11-10 Toshiba Corp Memory system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017126217A (en) * 2016-01-14 2017-07-20 京セラドキュメントソリューションズ株式会社 Data processor

Also Published As

Publication number Publication date
JP6165104B2 (en) 2017-07-19

Similar Documents

Publication Publication Date Title
JP6761891B2 (en) Memory controller with flexible address decoding function
JP6840145B2 (en) Command arbitration for fast memory interface
US6857055B2 (en) Programmable embedded DRAM current monitor
TWI496003B (en) Memory apparatuses, computer systems and methods for ordering memory responses
TW201118568A (en) Memory controller page management devices, systems, and methods
JP2008130056A (en) Semiconductor circuit
JP2008500668A (en) System and method for improving performance in a computer memory system that supports multiple memory access latency times
KR100585116B1 (en) Arbiter improving access efficiency of the multi-bank memory device, memory access arbitration system having the same and method thereof
US7366854B2 (en) Systems and methods for scheduling memory requests utilizing multi-level arbitration
JP2008276391A (en) Memory access control device
US9984014B2 (en) Semiconductor device
US6959354B2 (en) Effective bus utilization using multiple bus interface circuits and arbitration logic circuit
JP2001356961A (en) Arbitration device
JP5911548B1 (en) Apparatus, method, and computer program for scheduling access request to shared memory
US8667199B2 (en) Data processing apparatus and method for performing multi-cycle arbitration
US9697118B1 (en) Memory controller with interleaving and arbitration scheme
JP6165104B2 (en) Information processing apparatus and arbitration method
KR100626362B1 (en) Arbiter and method for arbitrating high-performance bandwidth system bus and bus system having arbiter
JP4839155B2 (en) Access arbitration device and access arbitration method
KR101022473B1 (en) Memory bank interleaving method and apparatus in the multi-layer bus system
JP5383159B2 (en) Bus relay apparatus and control method
US9760508B2 (en) Control apparatus, computer system, control method and storage medium
TWI539287B (en) Method and apparatus for on-the-fly learning traffic control scheme
JP2005346715A (en) Multiport random access memory
US20090292885A1 (en) Method and apparatus for providing atomic access to memory

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160620

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170327

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170413

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170509

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: 20170525

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170620

R150 Certificate of patent or registration of utility model

Ref document number: 6165104

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees