JP2017010220A - Arbitration circuit - Google Patents
Arbitration circuit Download PDFInfo
- Publication number
- JP2017010220A JP2017010220A JP2015124199A JP2015124199A JP2017010220A JP 2017010220 A JP2017010220 A JP 2017010220A JP 2015124199 A JP2015124199 A JP 2015124199A JP 2015124199 A JP2015124199 A JP 2015124199A JP 2017010220 A JP2017010220 A JP 2017010220A
- Authority
- JP
- Japan
- Prior art keywords
- priority
- arbitration
- access
- access request
- groups
- 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
Images
Landscapes
- Bus Control (AREA)
- Memory System (AREA)
Abstract
Description
この発明は、メモリに対しアクセス可能な共有バスと、共有バスを介してメモリにアクセスする複数のデバイスとを備えるプロセッサに対しメモリアクセスの調停を行う調停回路に関するものである。 The present invention relates to an arbitration circuit that arbitrates memory access for a processor that includes a shared bus accessible to a memory and a plurality of devices that access the memory via the shared bus.
CPUとこれに従属するメモリと、共有バスとを有し、共有バスを介してメモリにアクセスする複数のデバイスが接続されるプロセッサでは、一般に、複数のDMAコントローラからのDMAリクエストが、ある決まった優先順位で調停処理されてデータ転送が実行される。このとき、固定優先順位の場合に高優先度であるDMAコントローラからの要求がバスを占有し続けてしまう問題の解決手段として、加重ラウンドロビンなどのように優先順位を決まった割合で巡回させて調停する方法がある。巡回型の優先度設定は各DMAコントローラに割り当てられるバス帯域の割合に等しい。 In a processor having a CPU, a subordinate memory, and a shared bus, to which a plurality of devices accessing the memory via the shared bus are connected, generally, a DMA request from a plurality of DMA controllers is determined. Arbitration processing is performed in the priority order, and data transfer is executed. At this time, as a means of solving the problem that requests from the DMA controller having a high priority keep occupying the bus in the case of the fixed priority, the priority is circulated at a fixed rate such as weighted round robin. There is a way to mediate. The cyclic type priority setting is equal to the ratio of the bus bandwidth allocated to each DMA controller.
これら固定優先順や巡回型の調停は、バスに接続されるDMAコントローラが多い程優先順位確定の為の回路が複雑になり、帯域の調整の自由度が低くなってしまう問題がある。
この問題を解決するために、特許文献1のようにDMAコントローラに対して優先順位を設定保持するレジスタを設けると同時に、複数のDMAコントローラをいくつかのグループに分けて固定優先順位や巡回型の優先順位を設定する技術があり、帯域調整の自由度向上を可能としている。
特許文献1の調停回路では、アクセス許可が発せられたときに優先順位が更新される巡回順位グループを含む複数のグループに分割され優先順位レジスタに保持する優先順位を示すデータを初期値として変更可能とし、要求元ごとに所望の優先順位を得ることで、帯域の調整の自由度を高めることを可能としている。
The fixed priority order and the cyclic arbitration have a problem that the more the number of DMA controllers connected to the bus, the more complicated the circuit for determining the priority order and the lower the degree of freedom in adjusting the bandwidth.
In order to solve this problem, a register for setting and holding the priority order is provided for the DMA controller as in
In the arbitration circuit of
また前述した優先順位は予め設定されたものである。そのため、DMAのアクセス要求特性(リクエストにおけるバスの占有時間やリクエスト間のサイクル、連続リクエスト発行数など)が複数のDMAコントローラにおいてそれぞれ異なる場合、優先順位設定によるバス帯域の割合に対して各々のパフォーマンスに誤差が大きくなる問題がある。この問題を解決するために、特許文献2のようにDMAコントローラ内部にあるFIFOバッファの蓄積状態を調停回路へ通知し、アクセス要求の優先順位を変更する技術や、特許文献3のように、DMAコントローラ内部にある画像処理回路が処理する圧縮伸長率に応じてアクセス要求の優先順位を変更する技術があり、これらによって所望のバス帯域の調整を行うことを可能としている。
The priorities described above are set in advance. Therefore, if the DMA access request characteristics (bus occupancy time in requests, cycle between requests, number of consecutive requests issued, etc.) are different in each of multiple DMA controllers, each performance is different from the bus bandwidth ratio by priority setting. There is a problem that the error becomes large. In order to solve this problem, a technique for notifying the accumulation state of the FIFO buffer in the DMA controller to the arbitration circuit as in
特許文献2では、機能ブロックから発行されたアクセス要求をバッファリングしバッファに蓄積されているアクセス要求の数を通知し、アクセス要求の蓄積状態に基づいてアクセス要求の優先順位を変更することで効率よくアクセス要求を制御するメモリ制御装置を実現する。
特許文献3では、メモリ制御回路が画像処理回路から受け付けたリクエストに応じて読み出した画像データの圧縮率を取得し、取得した圧縮率に応じてメモリ制御回路の所定の優先基準を変更することでバス帯域の少ないプリンタコントローラにおいて、プリンタのパフォーマンスの向上を図ることを目的とする。
In
In
しかしながら、特許文献1では、グループ内における優先処理については述べているが、グループ間における優先処理について優先順位付けが可能としているもののその具体例についての説明がない。一般に調停すべき対象が複数のグループに分かれている場合や調停が多段構成である場合は、その分の調停回路が複数必要であり回路規模も大きく複雑になり特許文献1の目的の1つである回路の簡略化・高速化に相反する。
また、例えば特許文献2ではDMAコントローラ内部のFIFOバッファ容量が少ない場合においては優先順位の変更による帯域調整が難しく、また特許文献3では、圧縮伸長率の幅が少ない場合において同様に帯域調整が難しく、またFIFOバッファや圧縮伸長処理がないDMAコントローラとの帯域調整は不可能であるという課題がある。
However, although
Further, for example, in
本発明の一形態では、グループ間における優先処理が可能かつ優先順位の決定における調停処理を一括で実施することで帯域調整の自由度や帯域効率の向上と回路の簡素化・高速化を両立させることを目的とし、
本発明の他の形態では、複数のDMAコントローラが持つ共通なアクセス要求特性項目を定義してDMAコントローラ間の帯域調整を可能とし、メモリ帯域の効率を向上させることを目的の一つとする。
In one embodiment of the present invention, priority processing between groups is possible, and arbitration processing for determining priority order is performed in a batch, thereby improving both freedom of bandwidth adjustment and bandwidth efficiency and simplifying and speeding up the circuit. For the purpose of
Another object of the present invention is to define a common access request characteristic item possessed by a plurality of DMA controllers to enable bandwidth adjustment between the DMA controllers and to improve memory bandwidth efficiency.
本発明の調停回路のうち、第1の形態の本発明は、
CPUおよび該CPUに従属するメモリと、前記メモリに対してアクセス可能な共有バスと、を備え、共有バスを介してメモリにアクセスする複数のデバイスが接続されるプロセッサにおけるメモリアクセスの調停を行う調停回路であって、
複数の前記デバイスによるアクセス競合時に優先順位に従って前記共有バスへのアクセスを調停する調停部と、
前記複数のデバイスをグループ分けしグループ間およびグループ内の調停時における優先順位を保持する優先順位記憶部と、
調停処理を制御し、前記グループ間およびグループ内の優先順位を設定可能な調停制御部とを備え、
前記調停制御部は、複数のデバイスによるアクセス要求発生時にデバイスグループ間およびグループ内に対して設定された優先順位に基づき最終優先順位を決定して、複数ある調停の一括処理を可能にすることを特徴とする。
Of the arbitration circuit of the present invention, the first aspect of the present invention is:
Arbitration for arbitrating memory access in a processor comprising a CPU, a memory subordinate to the CPU, and a shared bus accessible to the memory, to which a plurality of devices that access the memory via the shared bus are connected A circuit,
An arbitration unit that arbitrates access to the shared bus according to priority when access conflicts by the plurality of devices;
A priority storage unit that groups the plurality of devices and retains a priority between groups and within the group during arbitration;
An arbitration control unit that controls arbitration processing and can set priorities between the groups and within the groups;
The arbitration control unit determines a final priority based on a priority set between device groups and within a group when an access request is generated by a plurality of devices, and enables batch processing of a plurality of arbitrations. Features.
他の形態の調停回路は、前記形態の本発明において、前記プロセッサに1以上のDMAコントローラを有することを特徴とする。 In another embodiment of the arbitration circuit according to the present invention, the processor includes one or more DMA controllers.
他の形態の調停回路は、前記形態の本発明において、前記DMAコントローラに前記グループが対応付けられていることを特徴とする。 The arbitration circuit according to another aspect is characterized in that, in the present invention according to the aspect, the group is associated with the DMA controller.
他の形態の調停回路は、前記形態の本発明において、前記調停制御部は、前記グループ間の優先順位を上位ビットとし、前記グループ内の優先順位を下位ビットとして該ビットを連結処理して最終優先順位を決定することを特徴とする。 In another aspect of the arbitration circuit according to the present invention, the arbitration control unit performs a concatenation process on the bits with the priority between the groups as the upper bits and the priority within the group as the lower bits. The priority order is determined.
他の形態の調停回路は、前記形態の本発明において、前記デバイスの共有バスに対するアクセス要求特性情報を保持するアクセス要求特性記憶部を備え、
前記調停制御部は、調停における優先順位をアクセス要求特性情報に従って設定可能であり、複数のデバイスによるアクセス要求発生時にそれぞれのアクセス要求特性情報によって設定・変更された優先順位に基づき最終優先順位を決定して、複数ある調停の一括処理を可能にすることを特徴とする。
In another aspect of the arbitration circuit according to the present invention, the arbitration circuit includes an access request characteristic storage unit that holds access request characteristic information for the shared bus of the device,
The arbitration control unit can set the priority in arbitration according to the access request characteristic information, and determines the final priority based on the priority set / changed by each access request characteristic information when an access request is generated by a plurality of devices. Thus, it is possible to perform batch processing of a plurality of mediations.
他の形態の調停回路は、前記形態の本発明において、前記調停制御部は、前記デバイスの共有バスに対するアクセス要求特性情報の通知を受信可能であり、
前記調停制御部は、調停における優先順位をアクセス要求特性情報に従って設定可能であり、複数のデバイスによるアクセス要求発生時にそれぞれのアクセス要求特性情報によって設定・変更された優先順位に基づき最終優先順位を決定して、複数ある調停の一括処理を可能にすることを特徴とする。
In another form of the arbitration circuit according to the present invention, the arbitration control unit can receive notification of access request characteristic information for the shared bus of the device,
The arbitration control unit can set the priority in arbitration according to the access request characteristic information, and determines the final priority based on the priority set / changed by each access request characteristic information when an access request is generated by a plurality of devices. Thus, it is possible to perform batch processing of a plurality of mediations.
他の形態の調停回路は、前記形態の本発明において、前記調停制御部は、アクセス要求特性情報によって、グループ間およびグループ内の調停時における優先順位を変更することを特徴とする。 In another aspect of the arbitration circuit according to the present invention, the arbitration control unit changes the priority in arbitration between groups and within a group according to access request characteristic information.
本発明は、グループ間における優先処理が可能かつ優先順位の決定における調停処理を一括で実施することで帯域調整の自由度や帯域効率の向上と回路の簡素化・高速化を両立させることを可能にする効果がある。 The present invention enables priority processing between groups and can perform both arbitration processing for priority determination at the same time to improve both bandwidth adjustment freedom and bandwidth efficiency and simplify and speed up the circuit. Has the effect of
(実施形態1)
以下に、本発明の一実施形態を添付図面に基づいて説明する。
本発明が適用されるプロセッサの一形態では、CPU1と共有バス2と共有バス2に接続されたメモリ3とを備えており、共有バス2に複数のデバイス30が接続される。この図では、複数のデバイス30が便宜上一つのブロックで記載されているが、それぞれがアクセス要求をすることができる複数のデバイスで構成されているものである。デバイスとしては、例えば画像形成装置において備えられるものが挙げられる。デバイスには、スキャナー、両面読み取り部、画像処理部、プリンタ、など各種のものが挙げられる。
(Embodiment 1)
Hereinafter, an embodiment of the present invention will be described with reference to the accompanying drawings.
An embodiment of a processor to which the present invention is applied includes a
さらに共有バス2には、DMAコントローラが接続されている。この形態では、第1DMAコントローラ21、第2DMAコントローラ22、第3DMAコントローラ23、第4DMAコントローラ24、第5DMAコントローラ25が接続されている。各DMAコントローラは、デバイスからのアクセス要求を受けることができる。各DMAコントローラには、それぞれ一または複数のデバイスが割り当てられている。
Furthermore, a DMA controller is connected to the shared
また、共有バス2には、調停回路10が接続されている。
調停回路10は、調停処理を制御する調停制御部11と、優先順位に従って複数の前記デバイスによるアクセス競合時に前記共有バス2へのアクセスを調停する調停部12と、複数デバイスをグループ分けしグループ間およびグループ内の調停時における優先順位を保持するレジスタ13とを有している。
調停制御部11は、例えばCPUとこれを動作させるプログラムによって構成することができる。レジスタ13は、本発明の優先順位記憶部として機能する。
調停制御部11は、レジスタ13に登録された優先順位を設定、変更することができる。
なお、優先順位の初期の設定では、例えば、設定情報をインストールしてもよく、また、操作部を通してユーザが設定入力をできるようにしてもよい。
An
The
The
The
In the initial setting of the priority order, for example, setting information may be installed, or the user may be able to input settings through the operation unit.
レジスタ13では、各デバイスについて従属グループにおけるグループ間優先順位と、デバイスの優先順位、グループ間の優先処理内容、グループ内の優先処理内容が設定、保持されている。
In the
表1は、レジスタ13に保持された設定内容が示されている。従属グループとして、グループA、B、Cが設定されており、グループA,B、Cのグループ間優先処理は、固定優先に設定されている。グループAは、グループ優先度が2、グループ内優先処理が固定優先順位に設定されている。
グループBは、グループ優先度が1、グループ内優先処理が固定優先順位に設定されている。グループCは、グループ優先度が3、グループ内優先処理がラウンドロビンに設定されている。
なお、優先度は、数値が高いものほど優先度が高くなっている。以下も同様である。
Table 1 shows the setting contents held in the
In the group B, the group priority is set to 1, and the intra-group priority process is set to a fixed priority. Group C has a group priority of 3 and an intra-group priority process set to round robin.
Note that the higher the priority, the higher the priority. The same applies to the following.
また、各デバイスについて(この実施形態では、DMAC1〜DMAC5と表記)、従属グループとデバイス優先度とが設定されている。
DMAC1のデバイスでは、従属グループがAでデバイス優先度が1に設定されている。
DMAC2のデバイスでは、従属グループがBでデバイス優先度が1に設定されている。
DMAC3のデバイスでは、従属グループがBでデバイス優先度が2に設定されている。
DMAC4のデバイスでは、従属グループがCでデバイス優先度が3に設定されている。
DMAC5のデバイスでは、従属グループがCでデバイス優先度が1に設定されている。
For each device (in this embodiment, expressed as DMAC1 to DMAC5), a subordinate group and a device priority are set.
In the device of DMAC1, the subordinate group is A and the device priority is set to 1.
In the device of DMAC2, the subordinate group is B and the device priority is set to 1.
In the device of DMAC3, the subordinate group is B and the device priority is set to 2.
In the DMAC4 device, the subordinate group is C and the device priority is set to 3.
In the DMAC5 device, the subordinate group is C and the device priority is set to 1.
上記したグループおよびデバイスは、一例として示しており、その他に、グループやデバイスが存在するものであってもよい。また、機械構成の変更によってグループやデバイスが変更されるものであってもよい。 The above-described groups and devices are shown as an example, and other groups and devices may exist. Moreover, a group and a device may be changed by changing the machine configuration.
なお、調停制御部11では、デバイスによるアクセス競合時にデバイスグループ間およびグループ内に対して設定された優先順位に基づき最終優先順位を決定して、複数ある調停の一括処理を可能にする。
調停制御部11による処理フローを図2に示す。
デバイスによるアクセスは、第1DMAコントローラ21〜第5DMAコントローラ25に伝えられ、アクセス要求が調停回路10に伝わって調停制御部11においてアクセス競合が判定される(ステップs1)。
Note that the
A processing flow by the
The access by the device is transmitted to the
調停制御部11では、レジスタ13からグループの優先度を読み出して行うグループ間調停(ステップs2)と、レジスタ13からグループ内優先度を読み出して行うグループ内調停(ステップs3)とが一括で処理される。
一括処理によって最終優先順位が決定されてレジスタ13の優先度が更新される(ステップs4)。調停制御部11では、調停部12に調停処理の実施を指示する。調停部12では、レジスタ13に設定された優先順位に従ってメモリアクセスの調停を実施する。
In the
The final priority is determined by the batch processing, and the priority of the
一括処理では、グループ優先度が上位ビット側、デバイス優先度が下位ビット側にして、ビット連結処理を行う。さらに、結果の大小を比較して最終優先順位を決定する。この方法により、グループ間の優先処理およびグループ内の優先処理を一括処理可能となる。その例を図3に示す。
各デバイスにおいて、グループ間優先度とグループ内優先度の連結処理が行われる。例えばDMAC1では、グループ間優先度2'h2で、グループ内優先度2'h1であり、これを連結処理すると、10進数で9の値が求められる。各デバイスで同様の処理を行うことで、DMAC4で優先順位が最も高く、DMAC2で優先順位が最も低い結果が得られる。
In the batch processing, the bit connection processing is performed with the group priority set to the upper bit side and the device priority set to the lower bit side. Furthermore, the final priority is determined by comparing the magnitudes of the results. By this method, priority processing between groups and priority processing within a group can be performed collectively. An example is shown in FIG.
In each device, the inter-group priority and the intra-group priority are connected. For example, in DMAC1, the inter-group priority 2'h2 and the intra-group priority 2'h1 are obtained. When these are concatenated, a value of 9 in decimal is obtained. By performing the same processing in each device, a result with the highest priority in DMAC4 and the lowest priority in DMAC2 is obtained.
(実施形態2)
次に、アクセス要求特性情報を参照して優先順位を決定する他の形態を説明する。
この形態では、アクセス要求特性情報がレジスタ13に保持されている。この形態では、レジスタ13は、本発明のアクセス要求特性記憶部として機能する。また、調整回路10において、レジスタ13以外の他のレジスタにアクセス要求特性情報が保持されているものであってもよい。
(Embodiment 2)
Next, another mode for determining priority by referring to access request characteristic information will be described.
In this embodiment, access request characteristic information is held in the
この形態において、レジスタ13に設定された各デバイスについて、従属グループと各デバイスの優先度の設定内容は前記実施形態と同様である。
すなわち、従属グループとして、グループA、B、Cが設定され、グループ間優先処理は、固定優先に設定されている。グループAは、グループ優先度が2、グループ内優先処理が固定優先順位に設定され、グループBは、グループ優先度が1、グループ内優先処理が固定優先順位に設定され、グループCは、グループ優先度が3、グループ内優先処理がラウンドロビンに設定されている。
In this embodiment, for each device set in the
That is, groups A, B, and C are set as subordinate groups, and the inter-group priority process is set to fixed priority. Group A has
また、DMAC1のデバイスでは、従属グループがAでデバイス優先度が1に設定され、DMAC2のデバイスでは、従属グループがBでデバイス優先度が1に設定され、DMAC3のデバイスでは、従属グループがBでデバイス優先度が2に設定され、DMAC4のデバイスでは、従属グループがCでデバイス優先度が3に設定され、DMAC5のデバイスでは、従属グループがCでデバイス優先度が1に設定されている。 In the DMAC1 device, the subordinate group is A and the device priority is set to 1. In the DMAC2 device, the subordinate group is B and the device priority is set to 1. In the DMAC3 device, the subordinate group is B. The device priority is set to 2, and in the DMAC4 device, the subordinate group is C and the device priority is set to 3, and in the DMAC5 device, the subordinate group is C and the device priority is set to 1.
また、アクセス要求特性情報として、各デバイスについて、連続アクセス処理回数、連続アクセス時の優先度、連続アクセス後の休閑サイクル、休閑時の優先度が設定されている。
これらの設定内容は、初期設定としてレジスタに登録されていてもよく、また、設定情報としてインストールされてもよく、ユーザが操作部などを通して設定できるようにしてもよい。
Further, as the access request characteristic information, for each device, the number of continuous access processes, the priority during continuous access, the fallow cycle after continuous access, and the priority during fallow are set.
These setting contents may be registered in the register as an initial setting, may be installed as setting information, and may be set by the user through the operation unit or the like.
例えば、DMAC1のデバイスに対しては、連続アクセス処理回数が1、連続アクセス時の優先度が3、連続アクセス後の休閑サイクルが1、休閑時の優先度が1に設定されている。
また、DMAC2のデバイスに対しては、連続アクセス処理回数が4、連続アクセス時の優先度が3、連続アクセス後の休閑サイクルが10、休閑時の優先度が1に設定されている。
For example, for the device of DMAC1, the number of consecutive access processes is set to 1, the priority during continuous access is set to 3, the fallow cycle after continuous access is set to 1, and the priority during fallow is set to 1.
For the DMAC2 device, the number of consecutive access processes is set to 4, the priority during continuous access is set to 3, the fallow cycle after continuous access is set to 10, and the priority during fallow is set to 1.
上記アクセス要求特性情報に従って、調停制御部11では、最終優先順位を決定する。その例を図4に従って、説明する。
まず、アクセス要求発生時にアクセス競合がなく、DMAC2のみのアクセス要求が発生すると、図4の上段に示すように、デバイスグループ間およびグループ内に対して設定された優先順位に基づき最終優先順位が決定される。この例では、最終優先順位が5に設定される。
According to the access request characteristic information, the
First, when there is no access contention when an access request occurs and an access request for only DMAC2 occurs, the final priority order is determined based on the priority order set between device groups and within the group as shown in the upper part of FIG. Is done. In this example, the final priority is set to 5.
一方、DMAC2で、アクセス要求特性に基づいて連続処理が行われると、連続処理回数は表2に示すように4であるので、DMAC2のアクセスが4回処理される間、図4中段に示すように、連続アクセス時の優先度が優先度3に変更されて、ビットの連結処理によって優先度は7に変更される。変更された優先度は、レジスタ13に登録される。
On the other hand, when continuous processing is performed in the
また、DMAC2のアクセスが4回処理された後、休閑サイクルである10サイクル期間中は、図4下段に示すように、休閑時の優先度は1に変更されて、ビットの連結処理によって優先度は5に変更される。
休閑サイクル後は、元の優先度に戻り、図4最下段に示すように、ビットの連結処理によって優先度は5となる。
なお、この例では、通常時のDMAC2のデバイス優先度と、休閑時のデバイス優先度が同じ数値になっているため、最終優先順位が同じになっているが、上記優先度が互いに異なっていれば、最終優先順位は異なったものとなる。
Also, after the DMAC2 access is processed four times, during the fallow cycle of 10 cycles, the priority during fallowing is changed to 1 as shown in the lower part of FIG. Is changed to 5.
After the fallow cycle, the priority returns to the original priority, and the priority becomes 5 by the bit concatenation process, as shown in the bottom row of FIG.
In this example, the device priority of the
なお、上記の例では、レジスタにアクセス要求特性情報が保持されている例について説明したが、アクセス要求特性情報を調停回路外、例えば、DMAコントローラなどからの通知を受けて、アクセス要求特性情報に応じた調停処理を行うようにしてもよい。 In the above example, the access request characteristic information is stored in the register. However, the access request characteristic information is received from outside the arbitration circuit, for example, from the DMA controller, and the access request characteristic information is stored in the access request characteristic information. A corresponding arbitration process may be performed.
図5は、その変更例を示すものであり、第1DMAコントローラ21から調停回路10に通知が行われる状態を示すブロック図である。通知は、例えば調停回路10の調停制御部11で受信することができる。
上記実施形態では、複数デバイスによるメモリなどへのDMA要求を調停する調停回路10において、要求元を複数グループに分けてグループ間での優先順位とグループ内での優先順位をそれぞれ変更可能かつ一括処理とし、要求元の連続アクセス回数やアクセスサイクルといった特性に合わせて優先順位を変更することで帯域の効率を高めることができる。
FIG. 5 is a block diagram illustrating an example of the change and a state in which the
In the above embodiment, in the
図6は、アクセス要求特性情報が与えられる状況を説明するブロック図である。
DMAC1では、画像データを先頭から水平方向に1画素ずつライン単位で入力し、4ライン分バッファに格納した後、画像データの配列を4×4画素単位に変換してメモリにライト出力するものである。
FIG. 6 is a block diagram illustrating a situation where access request characteristic information is given.
In the DMAC1, image data is input in units of pixels in the horizontal direction from the top, stored in a buffer for 4 lines, and then the array of image data is converted into units of 4 × 4 pixels and written out to a memory. is there.
具体的には、DMAC1では、画像入力部において、1ライン単位(水平方向)の順に入力し、次に、配列変換+バッファで4×4画素単位に画像データの配列を変換し、画像出力部でメモリから4×4画素単位で共有バスにデータを出力し、メモリ3に受け渡す。
Specifically, in the
また、DMAC2では、メモリに4×4画素単位で配列格納された画像データをリード入力してバッファに格納した後、4×4画素もしくは8×8画素単位で画像処理を行い、4×4画素もしくは8×8画素単位でデータ出力する。 In the DMAC2, image data arranged and stored in the memory in units of 4 × 4 pixels is read and stored in the buffer, and then image processing is performed in units of 4 × 4 pixels or 8 × 8 pixels. Alternatively, data is output in units of 8 × 8 pixels.
具体的には、DMAC2では、メモリ3から画素単位のデータを画像入力部に入力し、次に、画像処理部+バッファで4×4または8×8画素単位で画像処理を行い、さらに、画像出力部で4×4または8×8画素単位でデータを出力する。
Specifically, in the
上記動作を図7、8のタイミングチャートによって説明する。
図7に示すように、DMAC1動作例では、入力画像はクロック周期に従って、1ラインずつ入力される。一方、メモリアクセスする出力画像では、4ライン分の画像を出力するため、メモリに対し連続アクセスが行われる連続メモリアクセス期間と、連続アクセス間にメモリアクセス休閑期間とを有している。
The above operation will be described with reference to timing charts of FIGS.
As shown in FIG. 7, in the DMAC1 operation example, the input image is input line by line according to the clock cycle. On the other hand, since an output image for memory access outputs an image for four lines, it has a continuous memory access period in which continuous access to the memory is performed, and a memory access fallow period between continuous accesses.
例えば、入力画像が1ライン当たり8000画素である場合、4ライン分のデータが格納される。バッファ内に4×4単位の画像が2000ブロック存在する。メモリへの1回のライトアクセスで100ブロック分を転送する場合、連続アクセス要求回数は20回となり、これがアクセス要求特性となる。また1〜4ライン目の出力後、5〜8ライン目の画像が入力完了までメモリアクセスしない休閑期間がある。これもアクセス要求特性である。上記のタイミング図の例では16000〜20000クロックサイクルが休閑サイクルであり、これがアクセス要求特性となる。 For example, when the input image is 8000 pixels per line, data for four lines is stored. There are 2000 blocks of 4 × 4 units in the buffer. When 100 blocks are transferred by one write access to the memory, the number of continuous access requests is 20, which is an access request characteristic. Further, after the output of the 1st to 4th lines, there is a fallow period in which the image of the 5th to 8th lines is not accessed until the input is completed. This is also an access request characteristic. In the example of the above timing diagram, 16000 to 20000 clock cycles are fallow cycles, which are access request characteristics.
また、図8に示すように、DMAC2の動作例では、4×4画像処理モードにおいて、メモリアクセスで1〜4ラインの画素データを得るために、連続メモリアクセスを行って4×4の画素をメモリ3から入力する。この連続メモリアクセス期間の間は休閑期間となる。
画像の出力は、メモリアクセスとは関係なく、1〜4ラインの4×4の出力画像が出力される。
4×4画像処理モード時は、1ブロック分のメモリリードアクセスで1回分の画像処理ができるので、連続メモリアクセス回数は1回が最小値となり、画像処理を一度にまとめて処理する場合はこの最小値の整数倍となる。(バッファサイズで最適値を調整する)
Also, as shown in FIG. 8, in the DMAC2 operation example, in the 4 × 4 image processing mode, in order to obtain 1 to 4 lines of pixel data by memory access, continuous memory access is performed to obtain 4 × 4 pixels. Input from the
The image is output regardless of the memory access, and a 4 × 4 output image of 1 to 4 lines is output.
In the 4 × 4 image processing mode, one-time image processing can be performed by memory read access for one block. Therefore, the number of continuous memory accesses becomes the minimum value, and this is necessary when processing image processing all at once. It is an integral multiple of the minimum value. (Adjust the optimum value with the buffer size)
また、8×8の画像出力モードでは、4×4画素数によって1〜8ライン目までのメモリが連続メモリアクセスによってメモリ3から入手される。この連続メモリアクセス期間の間は休閑期間となる。
画像の出力は、メモリアクセスとは関係なく、1〜8ラインの8×8の出力画像が出力される。
8×8画像処理モード時は4ブロック分のメモリリードアクセスで1回分の画像処理ができるので、連続メモリアクセス回数は4回が最小値となり、上記同様に画像処理を一度にまとめて処理する場合はこの最小値の整数倍となる。
Further, in the 8 × 8 image output mode, the memory for the first to eighth lines is obtained from the
The output of the image is an 8 × 8 output image of 1 to 8 lines regardless of the memory access.
In the 8 × 8 image processing mode, one-time image processing can be performed by memory read access for four blocks, so the number of consecutive memory accesses is a minimum of four times, and image processing is performed all at once as described above. Is an integer multiple of this minimum value.
以上、本発明について上記実施形態に基づいて説明を行ったが、本発明の範囲を逸脱しない限りは実施形態に対し適宜の変更を行うことができる。 As described above, the present invention has been described based on the above embodiment, but appropriate modifications can be made to the embodiment without departing from the scope of the present invention.
1 CPU
2 共有バス
3 メモリ
10 調停回路
11 調停制御部
12 調停部
13 レジスタ
21 第1DMAコントローラ
22 第2DMAコントローラ
23 第3DMAコントローラ
24 第4DMAコントローラ
25 第5DMAコントローラ
30 複数のデバイス
1 CPU
2
Claims (7)
複数の前記デバイスによるアクセス競合時に優先順位に従って前記共有バスへのアクセスを調停する調停部と、
前記複数のデバイスをグループ分けしグループ間およびグループ内の調停時における優先順位を保持する優先順位記憶部と、
調停処理を制御し、前記グループ間およびグループ内の優先順位を設定可能な調停制御部とを備え、
前記調停制御部は、複数のデバイスによるアクセス要求発生時にデバイスグループ間およびグループ内に対して設定された優先順位に基づき最終優先順位を決定して、複数ある調停の一括処理を可能にすることを特徴とする調停回路。 Arbitration for arbitrating memory access in a processor comprising a CPU, a memory subordinate to the CPU, and a shared bus accessible to the memory, to which a plurality of devices that access the memory via the shared bus are connected A circuit,
An arbitration unit that arbitrates access to the shared bus according to priority when access conflicts by the plurality of devices;
A priority storage unit that groups the plurality of devices and retains a priority between groups and within the group during arbitration;
An arbitration control unit that controls arbitration processing and can set priorities between the groups and within the groups;
The arbitration control unit determines a final priority based on a priority set between device groups and within a group when an access request is generated by a plurality of devices, and enables batch processing of a plurality of arbitrations. A characteristic arbitration circuit.
前記調停制御部は、調停における優先順位をアクセス要求特性情報に従って設定可能であり、複数のデバイスによるアクセス要求発生時にそれぞれのアクセス要求特性情報によって設定・変更された優先順位に基づき最終優先順位を決定して、複数ある調停の一括処理を可能にすることを特徴とする請求項1〜4のいずれか1項に記載の調停回路。 An access request characteristic storage unit for holding access request characteristic information for the shared bus of the device;
The arbitration control unit can set the priority in arbitration according to the access request characteristic information, and determines the final priority based on the priority set / changed by each access request characteristic information when an access request is generated by a plurality of devices. Then, the arbitration circuit according to any one of claims 1 to 4, which enables batch processing of a plurality of arbitrations.
前記調停制御部は、調停における優先順位をアクセス要求特性情報に従って設定可能であり、複数のデバイスによるアクセス要求発生時にそれぞれのアクセス要求特性情報によって設定・変更された優先順位に基づき最終優先順位を決定して、複数ある調停の一括処理を可能にすることを特徴とする請求項1〜5のいずれか1項に記載の調停回路。 The arbitration control unit is capable of receiving notification of access request characteristic information for the shared bus of the device,
The arbitration control unit can set the priority in arbitration according to the access request characteristic information, and determines the final priority based on the priority set / changed by each access request characteristic information when an access request is generated by a plurality of devices. Then, the arbitration circuit according to any one of claims 1 to 5, which enables batch processing of a plurality of arbitrations.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015124199A JP6582598B2 (en) | 2015-06-19 | 2015-06-19 | Arbitration circuit |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015124199A JP6582598B2 (en) | 2015-06-19 | 2015-06-19 | Arbitration circuit |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2017010220A true JP2017010220A (en) | 2017-01-12 |
JP6582598B2 JP6582598B2 (en) | 2019-10-02 |
Family
ID=57761707
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015124199A Active JP6582598B2 (en) | 2015-06-19 | 2015-06-19 | Arbitration circuit |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6582598B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10366020B2 (en) | 2017-09-22 | 2019-07-30 | Kabushiki Kaisha Toshiba | Data transfer control device and image forming apparatus |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004038967A (en) * | 2002-07-05 | 2004-02-05 | Samsung Electronics Co Ltd | Method and device which can control use frequency of bus |
JP2007310532A (en) * | 2006-05-17 | 2007-11-29 | Renesas Technology Corp | Bus access arbitration method and semiconductor integrated circuit |
US20080244133A1 (en) * | 2007-03-27 | 2008-10-02 | Arm Limited | Data processing apparatus and method for arbitrating access to a shared resource |
JP2011187069A (en) * | 2005-03-01 | 2011-09-22 | Qualcomm Inc | Bus access arbitration scheme |
US8595402B1 (en) * | 2010-03-02 | 2013-11-26 | Marvell International Ltd. | Dynamic arbitration schemes for multi-master memory systems |
JP2015018558A (en) * | 2013-07-12 | 2015-01-29 | ザ リージェンツ オブ ザ ユニバーシティ オブ ミシガン | Single cycle arbitration |
-
2015
- 2015-06-19 JP JP2015124199A patent/JP6582598B2/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004038967A (en) * | 2002-07-05 | 2004-02-05 | Samsung Electronics Co Ltd | Method and device which can control use frequency of bus |
JP2011187069A (en) * | 2005-03-01 | 2011-09-22 | Qualcomm Inc | Bus access arbitration scheme |
JP2007310532A (en) * | 2006-05-17 | 2007-11-29 | Renesas Technology Corp | Bus access arbitration method and semiconductor integrated circuit |
US20080244133A1 (en) * | 2007-03-27 | 2008-10-02 | Arm Limited | Data processing apparatus and method for arbitrating access to a shared resource |
US8595402B1 (en) * | 2010-03-02 | 2013-11-26 | Marvell International Ltd. | Dynamic arbitration schemes for multi-master memory systems |
JP2015018558A (en) * | 2013-07-12 | 2015-01-29 | ザ リージェンツ オブ ザ ユニバーシティ オブ ミシガン | Single cycle arbitration |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10366020B2 (en) | 2017-09-22 | 2019-07-30 | Kabushiki Kaisha Toshiba | Data transfer control device and image forming apparatus |
Also Published As
Publication number | Publication date |
---|---|
JP6582598B2 (en) | 2019-10-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4480427B2 (en) | Resource management device | |
JP4907166B2 (en) | Resource management device | |
EP1403773B1 (en) | Resource management device | |
WO2011089660A1 (en) | Bus arbitration device | |
US8145815B2 (en) | Data processing system | |
US20150220460A1 (en) | Arbitrating direct memory access channel requests | |
US20190057047A1 (en) | Data storage device and a method for controlling access to a memory device of a data storage device | |
JP2016173798A (en) | Semiconductor device | |
US9104531B1 (en) | Multi-core device with multi-bank memory | |
JP5125890B2 (en) | Arbitration device and electronic device | |
JP2007094649A (en) | Access arbitration circuit | |
JP6582598B2 (en) | Arbitration circuit | |
US7127540B2 (en) | Apparatus and method for controlling frequency of bus use | |
JP4839155B2 (en) | Access arbitration device and access arbitration method | |
US9330038B2 (en) | Computer arbitration system, bandwidth, allocation apparatus, and method thereof | |
JP2007207024A (en) | Resource management device | |
JP4666143B2 (en) | Data transfer processing device | |
JP2003271545A (en) | Data processing system | |
JP2004078508A (en) | Bus arbitration circuit, bus arbitration method, and its program | |
JP2007026022A (en) | Bus arbitration device and bus arbitration method | |
JP2006251875A (en) | Bus arbitration device and bus arbitration method | |
JP5265596B2 (en) | Bus arbitration apparatus and bus arbitration method | |
JP3985085B2 (en) | DMA controller | |
JP2006277363A (en) | Information transfer system, and image forming device | |
JP4958596B2 (en) | Arbitration device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20180419 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20181228 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20190129 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20190401 |
|
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: 20190806 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20190819 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6582598 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |