JP4327081B2 - Memory access control circuit - Google Patents

Memory access control circuit Download PDF

Info

Publication number
JP4327081B2
JP4327081B2 JP2004378353A JP2004378353A JP4327081B2 JP 4327081 B2 JP4327081 B2 JP 4327081B2 JP 2004378353 A JP2004378353 A JP 2004378353A JP 2004378353 A JP2004378353 A JP 2004378353A JP 4327081 B2 JP4327081 B2 JP 4327081B2
Authority
JP
Japan
Prior art keywords
transaction
processing
memory access
control circuit
access control
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
JP2004378353A
Other languages
Japanese (ja)
Other versions
JP2006185198A (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.)
Kyocera Document Solutions Inc
Original Assignee
Kyocera Mita 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 Kyocera Mita Corp filed Critical Kyocera Mita Corp
Priority to JP2004378353A priority Critical patent/JP4327081B2/en
Publication of JP2006185198A publication Critical patent/JP2006185198A/en
Application granted granted Critical
Publication of JP4327081B2 publication Critical patent/JP4327081B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Memory System (AREA)

Description

本発明は、CPU等のバスマスタにより生成される、IDが付与されたトランザクションをキューイングバッファに登録し、当該キューイングバッファに登録された順序に従い、前記トランザクションを処理するメモリアクセス制御回路に関する。   The present invention relates to a memory access control circuit for registering an ID-added transaction generated by a bus master such as a CPU in a queuing buffer and processing the transaction according to the order registered in the queuing buffer.

メモリアクセス、あるいはバスアクセスの効率を高めるためにキューイングバッファを用い、アクセス要求に関するトランザクションを蓄積して優先度制御を行なう手法が一般的に用いられる。   In order to increase the efficiency of memory access or bus access, a method of using a queuing buffer and accumulating a transaction related to an access request and performing priority control is generally used.

例えば、共有バスシステムにおいて、リアルタイム性を損なうことなくバスマスタからバススレーブへのアクセス要求の優先順位を制御する技術(特許文献1参照)、特定のトランザクションキューが集中することによるシステムダウンの回避、およびCPUのアイドルタイムを少なくするために、トランザクション毎の負荷を認識して優先順位を決定する技術(特許文献2参照)、トランザクション毎にIDを付与してスヌープ制御を行なう技術(特許文献3参照)等々である。
特開2003−186823号公報 特開平5−204671号公報 特表平11−501141号公報
For example, in a shared bus system, a technique for controlling the priority of access requests from a bus master to a bus slave without impairing real-time performance (see Patent Document 1), avoiding system down due to concentration of specific transaction queues, and In order to reduce the idle time of the CPU, a technique for recognizing the load for each transaction and determining the priority (see Patent Document 2), and a technique for performing snoop control by assigning an ID to each transaction (see Patent Document 3) And so on.
JP 2003-186823 A Japanese Patent Laid-Open No. 5-204671 Japanese National Patent Publication No. 11-501141

上記した特許文献を含む従来技術において、メモリの実効帯域を高めるためにトランザクションを蓄積するキューイングバッファの段数を増やせばレイテンシ(待ち時間)が増大するといった不都合があった。
特に、上記したレイテンシィによりバフォーマンスに影響を与えるマスタ装置(以下、レイテンシセンシティブなマスタという)と実効帯域を多く必要とするマスタが混在するシステムにおいては、キューイングバッファの構成段数を最適化することが困難になる。
In the prior art including the above-mentioned patent documents, there is a disadvantage that the latency (waiting time) increases if the number of queuing buffers for storing transactions is increased in order to increase the effective bandwidth of the memory.
In particular, in a system in which a master device that affects performance due to the above-described latency (hereinafter referred to as a latency-sensitive master) and a master that requires a large effective bandwidth are mixed, the number of stages in the queuing buffer should be optimized. Becomes difficult.

本発明は上記事情に鑑みてなされたものであり、レイテンシセンシティブなマスタのパフォーマンスを低下させることなく効率の良いメモリアクセスを実現するメモリアクセス制御回路を提供することを目的とする。
また、レイテンシセンシティブなマスタといと実効帯域を多く必要とするマスタが混在する複雑なシステムにおいてもキューイングバッファの構成段数を容易に最適化可能なメモリアクセス制御回路を提供することも目的とする。
The present invention has been made in view of the above circumstances, and an object thereof is to provide a memory access control circuit that realizes efficient memory access without degrading the performance of a latency-sensitive master.
It is another object of the present invention to provide a memory access control circuit capable of easily optimizing the number of constituent stages of a queuing buffer even in a complex system in which a latency-sensitive master and a master requiring a large effective bandwidth are mixed.

上記した課題を解決するために本発明は、バスマスタにより生成される、IDが付与されたトランザクションをキューイングバッファに登録し、前記キューイングバッファに登録された順序に従い、前記トランザクションを処理するメモリアクセス制御回路であって、前記IDを認識し、レイテンシィによりバフォーマンスに影響を与えるバスマスタからのトランザクションが前記キューイングバッファに登録されたことを検知するトランザクション検知手段と、前記トランザクションが検出手段により前記影響を与えるトランザクションが検出されたときに、当該トランザクションを先行してキューイングされているトランザクションに優先して処理する処理順序変更手段と、を具備することを特徴とする。   In order to solve the above-described problem, the present invention registers a transaction with an ID, which is generated by a bus master, in a queuing buffer, and processes the transaction according to the order registered in the queuing buffer. A control circuit for recognizing the ID and detecting that a transaction from a bus master that affects performance by latency is registered in the queuing buffer; and the transaction is detected by the detection means. And a processing order changing means for processing the transaction in preference to the transaction queued in advance when the transaction giving the data is detected.

また、本発明において、前記処理順序変更手段は、既にキューイングされ先行して処理される予定のトランザクションが、レイテンシィによりバフォーマンスに影響を与える前記バスマスタからのトランザクションと不一致の場合に、前記優先処理を許可することを特徴とする。   Also, in the present invention, the processing order changing means may execute the priority processing when a transaction that has already been queued and is scheduled to be processed in advance does not match a transaction from the bus master that affects performance due to latency. It is characterized by permitting.

また、本発明において、前記処理順序変更手段は、前記先行して処理される予定のトランザクションが対象とするライトアドレスと、前記優先して処理するトランザクションとが対象とするライトアドレスとが不一致である場合に、前記優先処理を許可することを特徴とする。   Also, in the present invention, the processing order changing means does not match a write address targeted by the transaction scheduled to be processed in advance and a write address targeted by the preferentially processed transaction. In this case, the priority processing is permitted.

また、本発明において、前記処理順序変更手段は、前記キューイングバッファに登録されたトランザクションのそれぞれに対応し、前記優先処理により処理がスキップされた回数を記憶する履歴保持手段を備え、前記優先処理に先立ち前記履歴保持手段を参照し、n回処理をスキップされたトランザクションに関しn+1回処理をスキップされないように制御することを特徴とする。   Further, in the present invention, the processing order changing unit includes a history holding unit that stores the number of times the processing is skipped by the priority processing corresponding to each of the transactions registered in the queuing buffer, and the priority processing Prior to the processing, the history holding means is referred to, and control is performed so that n + 1 processing is not skipped for a transaction for which processing has been skipped n times.

また、本発明において、前記処理順序変更手段は、特定の転送レートでストリームデータのリード/ライトが必要な前記バスマスタから、所定の保証帯域を上回るトランザクションを受付けた場合に前記優先処理を有効とし、下回るトランザクションを受付けた場合は前記優先処理を無効にすることを特徴とする。   Further, in the present invention, the processing order changing means enables the priority processing when a transaction exceeding a predetermined guaranteed bandwidth is received from the bus master that needs to read / write stream data at a specific transfer rate, When a lower transaction is accepted, the priority processing is invalidated.

本発明によれば、レイテンシィによりバフォーマンスに影響を与えるバスマスタ(レイテンシセンシティブなマスタ)からのトランザクションがキューイングバッファに登録されたことを検知し、当該トランザクションを先行してキューイングされているトランザクションに優先して処理することで、レイテンシセンシティブなマスタのパフォーマンスを低下させることなく効率の良いメモリアクセスを実現するメモリアクセス制御回路を提供することができる。   According to the present invention, it is detected that a transaction from a bus master (latency-sensitive master) that affects performance due to latency is registered in the queuing buffer, and the transaction is queued ahead of the transaction. By processing with priority, it is possible to provide a memory access control circuit that realizes efficient memory access without degrading the performance of the latency-sensitive master.

なお、レイテンシセンシティブなマスタからのトランザクションを優先的に処理する条件として、(1)既にキューイングされ先行して処理される予定のトランザクションが、レイテンシィセンシティブなバスマスタからのトランザクションでないこと、(2)先行して処理される予定のトランザクションが対象とするライトアドレスと、優先して処理するトランザクションとが対象とするライトアドレスとが不一致であること、(3)優先処理に先立ち、n回処理をスキップされたトランザクションに関しn+1回処理をスキップされないように制御すること、(4)特定の転送レートでストリームデータのリード/ライトが必要なバスマスタから、所定の保証帯域を上回るトランザクションを受付けた場合に優先処理を有効とし、下回るトランザクションを受付けた場合は優先処理を無効にすることのうちの少なくとも一つを条件とする。このことにより、レイテンシセンシティブなマスタのパフォーマンスを低下させることなく効率の良いメモリアクセスを実現する他に、レイテンシセンシティブなマスタと実効帯域を多く必要とするマスタが混在する複雑なシステムにおいてもキューイングバッファの構成段数を容易に最適化可能なメモリアクセス制御回路を提供することができる。   As a condition for preferentially processing a transaction from a latency-sensitive master, (1) a transaction that has already been queued and scheduled to be processed in advance is not a transaction from a latency-sensitive bus master; (2) The write address targeted by the transaction scheduled to be processed in advance does not match the write address targeted by the preferentially processed transaction. (3) Prior to priority processing, processing is skipped n times. (4) Priority processing when a transaction exceeding a predetermined guaranteed bandwidth is received from a bus master that needs to read / write stream data at a specific transfer rate. Is valid and below If accepted transaction to at least one condition of disabling the priority processing. This enables efficient memory access without degrading the performance of latency-sensitive masters, as well as queuing buffers in complex systems where both latency-sensitive masters and masters that require a large effective bandwidth are mixed. It is possible to provide a memory access control circuit capable of easily optimizing the number of constituent stages.

図1は、本発明実施形態にかかわるメモリアクセス制御回路の内部構成を示すブロック図である。
本発明実施形態にかかわるメモリアクセス制御回路は、ホストインタフェース1と、OPB(On Chip Peripheral Bus)インタフェース2と、リフレッシュコントローラ3と、アービタ4(調停回路)と、キューイングバッファ5と、デバイスマネージャ6と、コマンドディスパッチ7と、コマンドジェネレータ8と、ストローブジェネレータ9と、クロックジェネレータ10で構成される。
FIG. 1 is a block diagram showing an internal configuration of a memory access control circuit according to an embodiment of the present invention.
The memory access control circuit according to the embodiment of the present invention includes a host interface 1, an OPB (On Chip Peripheral Bus) interface 2, a refresh controller 3, an arbiter 4 (arbitration circuit), a queuing buffer 5, and a device manager 6. A command dispatcher 7, a command generator 8, a strobe generator 9, and a clock generator 10.

ホストインタフェース1は、接続されるホスト(バスマスタ)とのインタフェースを司り、ここでは、ホストにより生成されるメモリアクセス要求をアービタ4に供給する。また、OPBインタフェース2は、制御レジスタ、ステータスレジスタ関連のインタフェースを司り、ここでは、ダイレクトコマンド要求をアービタ4に供給する。本インタフェースは米国IBM社のOPB仕様に準拠する。
更に、リフレッシュコントローラ3は、レジスタに設定された周期に従ってリフレッシュ要求を生成しアービタ4に供給する。
The host interface 1 manages an interface with a connected host (bus master), and here supplies a memory access request generated by the host to the arbiter 4. The OPB interface 2 controls interfaces related to the control register and status register, and here supplies a direct command request to the arbiter 4. This interface conforms to the IBM's OPB specification.
Further, the refresh controller 3 generates a refresh request according to the period set in the register and supplies it to the arbiter 4.

アービタ4は、上記したホストインタフェース1、OPBインタフェース2、リフレッシュコントローラ3のそれぞれにより生成される、アクセス要求、リフレッシュ要求、ダイレクトコマンド要求を調停してキューイングバッファ5に登録するトランザクションを決定する。
アービタ4は、トランザクション検知手段と処理順序変更手段(いずれも図示せず)で構成され、このうち、トランザクション検知手段は、レイテンシセンシティブなマスタからのトランザクションがキューイングバッファ5に登録されたことを検知し、処理順序変更手段は、当該トランザクションを先行してキューイングされているトランザクションに優先して処理するそれぞれの機能を持つ。但し、レイテンシセンシティブなマスタからのトランザクションを優先的に処理する条件として、(1)既にキューイングされ先行して処理される予定のトランザクションが、レイテンシィセンシティブなバスマスタからのトランザクションでないこと、(2)先行して処理される予定のトランザクションが対象とするライトアドレスと、優先して処理するトランザクションとが対象とするライトアドレスとが不一致であること、(3)優先処理に先立ち、n回処理をスキップされたトランザクションに関しn+1回処理をスキップされないように制御すること、(4)特定の転送レートでストリームデータのリード/ライトが必要なバスマスタから、所定の保証帯域を上回るトランザクションを受付けた場合に優先処理を有効とし、下回るトランザクションを受付けた場合は優先処理を無効にすることのうちの少なくとも一つを条件とする。
The arbiter 4 determines a transaction to be registered in the queuing buffer 5 by arbitrating an access request, a refresh request, and a direct command request generated by the host interface 1, the OPB interface 2, and the refresh controller 3, respectively.
The arbiter 4 is composed of a transaction detection means and a processing order change means (both not shown), and the transaction detection means detects that a transaction from a latency-sensitive master is registered in the queuing buffer 5. The processing order changing means has a function of processing the transaction in preference to the transaction queued in advance. However, as a condition for preferentially processing a transaction from a latency-sensitive master, (1) a transaction that has already been queued and scheduled to be processed in advance is not a transaction from a latency-sensitive bus master; (2) The write address targeted by the transaction scheduled to be processed in advance does not match the write address targeted by the preferentially processed transaction. (3) Prior to priority processing, processing is skipped n times. (4) Priority processing when a transaction exceeding a predetermined guaranteed bandwidth is received from a bus master that needs to read / write stream data at a specific transfer rate. Is valid and below If accepted transaction to at least one condition of disabling the priority processing.

キューイングバッファ5は、アービタ4により調停されたトランザクションが登録され格納されるファイルである。登録されたトランザクションは、ローコマンド発行要求、カラムコマンド発行要求の2段階に分けコマンドディスパッチャ7に対してコマンド発行要求を供給する。
デバイスマネージャ6は、メモリインタフェースを介して接続される各メモリデバイス(ここではSDRAMとする)におけるそれぞれのバンクの状態を管理し、コマンドディスパッチャ7が発行するコマンドを監視して各デバイスにおけるそれぞれのバンクの状態遷移をトレースしてコマンドディスパッチ7に各メモリデバイスにおけるバンクの現在の状態を通知する。
The queuing buffer 5 is a file in which transactions arbitrated by the arbiter 4 are registered and stored. The registered transaction is divided into two stages, a row command issue request and a column command issue request, and a command issue request is supplied to the command dispatcher 7.
The device manager 6 manages the state of each bank in each memory device (in this case, SDRAM) connected via the memory interface, monitors the command issued by the command dispatcher 7 and monitors each bank in each device. And the command dispatch 7 is notified of the current state of the bank in each memory device.

コマンドディスパッチャ7は、キューイングバッファ5からのコマンド発行要求と、デバイスマネージャ6から供給される各デバイスにおけるそれぞれのバンクの状態に関する情報をもとにメモリインタフェースを介して接続される各デバイス発行するコマンドを決定する。
なお、コマンドジェネレータ8は、コマンドディスパッチャ7が発行するコマンドを、メモリインンタフェースを介して各メモリデバイスに出力し、ストローブジェネレータ9は、データバス、ストローブ信号の双方向バッファの出力イネーブル制御、およびリード/ライトのためのストローブ信号の生成、およびタイミング調整も行なう。また、クロックジェネレータ10は、各メモリデバイスに供給するクロックのディレイ調整等の校正制御とクロックのON/OFF制御を行なう。
The command dispatcher 7 issues a command issued by each device connected via the memory interface based on a command issuance request from the queuing buffer 5 and information on the state of each bank in each device supplied from the device manager 6. To decide.
The command generator 8 outputs the command issued by the command dispatcher 7 to each memory device via the memory interface, and the strobe generator 9 outputs the data bus, strobe signal bidirectional buffer output enable control, and read / Strobe signal generation for write and timing adjustment are also performed. The clock generator 10 performs calibration control such as adjustment of a delay of a clock supplied to each memory device and ON / OFF control of the clock.

以下、図1を参照しながら本発明実施形態の動作について詳細に説明する。まず、CPU等のバスマスタにより生成されるIDが付与されたメモリアクセス要求は、ホストインタフェース1を介してアービタ4で受付けられる。
アービタ4では、他に、リフレッシュコントローラ3によって生成されるリフレッシュ要求、あるいはOPBインタフェース2を介して到来するダイレクトコマンド要求等も受付けている。アービタ4は、これら要求を受付け、調停し、トランザクションとしてキューイングバッファ5に登録する。そして、コマンドディスパッチャ7は、キューイングバッファ5に登録されたトランザクションに従いシーケンシャルにコマンドをディスパッチし、コマンドジェネレータ8を介してメモリデバイスのリード/ライトを実行する。
Hereinafter, the operation of the embodiment of the present invention will be described in detail with reference to FIG. First, a memory access request with an ID generated by a bus master such as a CPU is received by the arbiter 4 via the host interface 1.
In addition, the arbiter 4 accepts a refresh request generated by the refresh controller 3 or a direct command request coming via the OPB interface 2. The arbiter 4 receives these requests, arbitrates them, and registers them in the queuing buffer 5 as transactions. The command dispatcher 7 dispatches commands sequentially according to the transactions registered in the queuing buffer 5, and executes read / write of the memory device via the command generator 8.

アービタ4はまた、上記したアクセス要求を受付け、処理順序の制御も行なう。通常はFIFO(First-In First-Out)アルゴリズムに従い、キューイングバッファ5に登録されたトランザクションの順に従って順序制御を行なうが、内蔵するトランザクション検知手段でトランザクションに付与されたIDを認識し、レイテンシィによりパフォーマンスに影響を与えるバスマスタからのトランザクションがキューイングバッファ5に登録されたことを検知したときに、内蔵する処理順序変更手段を起動し、以下に示す処理順序の制御を行なう。
具体的に、処理順序変更手段は、当該トランザクションを、先行してキューイングバッフ5にキューイングされているトランザクションに優先して処理する。但し、上記した優先処理を実行するにあたり、処理順位変更手段は、キューイングバッファ5に既にキューイングされ先行して処理される予定のトランザクションが、レイテンシセンシティブなバスマスタからのトランザクションと不一致の場合に許可する。また、先行して処理される予定のトランザクションが対象とするライトアドレスと、優先して処理するトランザクションとが対象とするライトアドレスとが不一致である場合(同期制御)に許可する。
The arbiter 4 also receives the above access request and controls the processing order. Usually, the order is controlled in accordance with the order of transactions registered in the queuing buffer 5 in accordance with the FIFO (First-In First-Out) algorithm. The built-in transaction detection means recognizes the ID assigned to the transaction, and the latency. When it is detected that a transaction from the bus master that affects the performance is registered in the queuing buffer 5, the built-in processing order changing means is activated to control the processing order shown below.
Specifically, the processing order changing unit processes the transaction in preference to the transaction queued in the queuing buffer 5 in advance. However, in executing the above-described priority processing, the processing order changing means permits the transaction that has already been queued in the queuing buffer 5 and scheduled to be processed in advance does not match the transaction from the latency-sensitive bus master. To do. Further, it is permitted when the write address targeted by the transaction scheduled to be processed in advance does not match the write address targeted by the preferentially processed transaction (synchronous control).

また、処理順序変更手段は、キューイングバッファ5に登録されたトランザクションのそれぞれに対応し、優先処理により処理がスキップされた回数を記憶する、例えばカウンタ等の履歴保持手段を備えている。このため、処理順序変更手段は、優先処理に先立ちカウンタを参照し、一度(n回)処理をスキップされたトランザクションに関し、二度(n+1回)処理をスキップされないように制御する。ここで、nはパラメータとしてあらかじめ設定されるものとする。
更に、処理順序変更手段は、特定の転送レートでストリームデータのリード/ライトが必要なバスマスタから、所定の保証帯域を上回るトランザクションを受付けた場合に優先処理を有効とし、下回るトランザクションを受付けた場合は優先処理を無効にする制御も行なう。
The processing order changing means includes history holding means such as a counter for storing the number of times processing has been skipped by priority processing, corresponding to each transaction registered in the queuing buffer 5. For this reason, the processing order changing unit refers to the counter prior to the priority processing, and controls so that the processing is not skipped twice (n + 1 times) for the transaction that has been skipped once (n times). Here, n is set in advance as a parameter.
Further, the processing order changing means enables the priority processing when a transaction exceeding a predetermined guaranteed bandwidth is accepted from a bus master that needs to read / write stream data at a specific transfer rate, It also controls to disable priority processing.

以上説明のように本発明は、アービタ4が、レイテンシセンシティブなマスタからのトランザクションがキューイングバッファ5に登録されたことを検知し、当該トランザクションを先行してキューイングされているトランザクションに優先して処理するものであり、このことにより、レイテンシセンシティブなマスタのパフォーマンスを低下させることなく効率の良いメモリアクセスを実現することができる。   As described above, in the present invention, the arbiter 4 detects that a transaction from a latency-sensitive master is registered in the queuing buffer 5 and prioritizes the transaction queued in advance of the transaction. Thus, efficient memory access can be realized without degrading the performance of the latency-sensitive master.

なお、レイテンシセンシティブなマスタからのトランザクションを優先的に処理する条件として、(1)既にキューイングされ先行して処理される予定のトランザクションが、レイテンシィセンシティブなバスマスタからのトランザクションでないこと、(2)先行して処理される予定のトランザクションが対象とするライトアドレスと、優先して処理するトランザクションとが対象とするライトアドレスとが不一致であること、(3)優先処理に先立ち、n回処理をスキップされたトランザクションに関しn+1回処理をスキップされないように制御すること、(4)特定の転送レートでストリームデータのリード/ライトが必要なバスマスタから、所定の保証帯域を上回るトランザクションを受付けた場合に優先処理を有効とし、下回るトランザクションを受付けた場合は優先処理を無効にすることのうちの少なくとも一つを条件とする。   As a condition for preferentially processing a transaction from a latency-sensitive master, (1) a transaction that has already been queued and scheduled to be processed in advance is not a transaction from a latency-sensitive bus master; (2) The write address targeted by the transaction scheduled to be processed in advance does not match the write address targeted by the preferentially processed transaction. (3) Prior to priority processing, processing is skipped n times. (4) Priority processing when a transaction exceeding a predetermined guaranteed bandwidth is received from a bus master that needs to read / write stream data at a specific transfer rate. Is valid and below If accepted transaction to at least one condition of disabling the priority processing.

アービタ4が上記した制御を実行することで、レイテンシセンシティブなマスタのパフォーマンスを低下させることなく効率の良いメモリアクセスを実現し、また、レイテンシセンシティブなマスタと実効帯域を多く必要とするマスタが混在する複雑なシステムにおいてもキューイングバッファの構成段数を容易に最適化可能なメモリアクセス制御回路を提供することができる。   The arbiter 4 executes the above-described control to achieve efficient memory access without degrading the performance of the latency-sensitive master, and there is a mixture of the latency-sensitive master and the master that requires a large effective bandwidth. It is possible to provide a memory access control circuit that can easily optimize the number of constituent stages of a queuing buffer even in a complex system.

本発明実施形態にかかわるメモリアクセス制御回路の内部構成を示すブロック図である。1 is a block diagram showing an internal configuration of a memory access control circuit according to an embodiment of the present invention.

符号の説明Explanation of symbols

1…ホストインタフェース、2…OPBインタフェース、3…リフレッシュコントローラ、4…アービタ、5…キューイングバッファ、6…デバイスマネージャ、7…コマンドディスパッチ、8…コマンドジェネレータ、9…ストローブジェネレータ、10…クロックジェネレータ


DESCRIPTION OF SYMBOLS 1 ... Host interface, 2 ... OPB interface, 3 ... Refresh controller, 4 ... Arbiter, 5 ... Queuing buffer, 6 ... Device manager, 7 ... Command dispatch, 8 ... Command generator, 9 ... Strobe generator, 10 ... Clock generator


Claims (4)

バスマスタにより生成される、IDが付与されたトランザクションをキューイングバッファに登録し、前記キューイングバッファに登録された順序に従い、前記トランザクションを処理するメモリアクセス制御回路であって、
前記IDを認識し、レイテンシィによりバフォーマンスに影響を与えるバスマスタからのトランザクションが前記キューイングバッファに登録されたことを検知するトランザクション検知手段と、
前記トランザクションが検出手段により前記影響を与えるトランザクションが検出されたときに、当該トランザクションを先行してキューイングされているトランザクションに優先して処理する処理順序変更手段と、を具備し、
前記処理順序変更手段は、
特定の転送レートでストリームデータのリード/ライトが必要な前記バスマスタから、所定の保証帯域を上回るトランザクションを受付けた場合に前記優先処理を有効とし、下回るトランザクションを受付けた場合は前記優先処理を無効にすることを特徴とするメモリアクセス制御回路。
A memory access control circuit for registering a transaction with an ID generated by a bus master in a queuing buffer and processing the transaction according to the order registered in the queuing buffer,
Transaction detecting means for recognizing the ID and detecting that a transaction from a bus master that affects performance by latency is registered in the queuing buffer;
Processing order changing means for preferentially processing the transaction preceding the queued transaction when the transaction affects the transaction by the detecting means .
The processing order changing means includes
The priority processing is validated when a transaction exceeding a predetermined guaranteed bandwidth is accepted from the bus master that needs to read / write stream data at a specific transfer rate, and the priority processing is invalidated when a transaction below is accepted. A memory access control circuit.
前記処理順位変更手段は、
既にキューイングされ先行して処理される予定のトランザクションが、レイテンシィによりバフォーマンスに影響を与える前記バスマスタからのトランザクションと不一致の場合に、前記優先処理を許可することを特徴とする請求項1に記載のメモリアクセス制御回路。
The processing order changing means is
2. The priority processing is permitted when a transaction that has already been queued and scheduled to be processed in advance does not match a transaction from the bus master that affects performance due to latency. Memory access control circuit.
前記処理順序変更手段は、
前記先行して処理される予定のトランザクションが対象とするライトアドレスと、前記優先して処理するトランザクションとが対象とするライトアドレスとが不一致である場合に、前記優先処理を許可することを特徴とする請求項1または2に記載のメモリアクセス制御回路。
The processing order changing means includes
The priority processing is permitted when a write address targeted by the transaction scheduled to be processed in advance and a write address targeted by the transaction processed preferentially do not match. The memory access control circuit according to claim 1 or 2.
前記処理順序変更手段は、
前記キューイングバッファに登録されたトランザクションのそれぞれに対応し、前記優先処理により処理がスキップされた回数を記憶する履歴保持手段を備え、前記優先処理に先立ち前記履歴保持手段を参照し、n回処理をスキップされたトランザクションに関しn+1回処理をスキップされないように制御することを特徴とする請求項1ないし3のいずれか1項に記載のメモリアクセス制御回路。
The processing order changing means includes
Corresponding to each of the transactions registered in the queuing buffer, there is provided a history holding means for storing the number of times processing has been skipped by the priority processing, and the processing is performed n times with reference to the history holding means prior to the priority processing. 4. The memory access control circuit according to claim 1, wherein the processing is controlled not to be skipped n + 1 times with respect to a transaction skipped.
JP2004378353A 2004-12-28 2004-12-28 Memory access control circuit Expired - Fee Related JP4327081B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004378353A JP4327081B2 (en) 2004-12-28 2004-12-28 Memory access control circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004378353A JP4327081B2 (en) 2004-12-28 2004-12-28 Memory access control circuit

Publications (2)

Publication Number Publication Date
JP2006185198A JP2006185198A (en) 2006-07-13
JP4327081B2 true JP4327081B2 (en) 2009-09-09

Family

ID=36738267

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004378353A Expired - Fee Related JP4327081B2 (en) 2004-12-28 2004-12-28 Memory access control circuit

Country Status (1)

Country Link
JP (1) JP4327081B2 (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6295700B2 (en) 2014-02-12 2018-03-20 株式会社ソシオネクスト Arbitration circuit and processing method of the arbitration circuit
JP6233287B2 (en) * 2014-12-11 2017-11-22 京セラドキュメントソリューションズ株式会社 Memory access device, image processing device
JP6677627B2 (en) 2016-12-20 2020-04-08 株式会社ソニー・インタラクティブエンタテインメント Information processing apparatus and memory access method
US11380376B2 (en) * 2020-08-26 2022-07-05 Micron Technology, Inc. Apparatuses and methods to perform low latency access of a memory
WO2023162465A1 (en) * 2022-02-24 2023-08-31 ソニーセミコンダクタソリューションズ株式会社 Write buffer control circuit

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6038646A (en) * 1998-01-23 2000-03-14 Sun Microsystems, Inc. Method and apparatus for enforcing ordered execution of reads and writes across a memory interface
US6195724B1 (en) * 1998-11-16 2001-02-27 Infineon Technologies Ag Methods and apparatus for prioritization of access to external devices

Also Published As

Publication number Publication date
JP2006185198A (en) 2006-07-13

Similar Documents

Publication Publication Date Title
JP4778199B2 (en) Data transfer apparatus and data transfer method
EP2807567B1 (en) Systems and methods for dynamic priority control
CN102414671B (en) Hierarchical memory arbitration technique for disparate sources
JP4408263B2 (en) Data transfer system and data transfer method
JP4715801B2 (en) Memory access control device
US20070038829A1 (en) Wait aware memory arbiter
US20100312935A1 (en) Data processing system
US20080270658A1 (en) Processor system, bus controlling method, and semiconductor device
JP5578713B2 (en) Information processing device
US6584530B2 (en) Information processing system, bus arbiter, and bus controlling method
US9330025B2 (en) Information processing apparatus, memory control apparatus, and control method thereof
JP4313607B2 (en) Bus connection circuit and bus connection system
JP4327081B2 (en) Memory access control circuit
JP5911548B1 (en) Apparatus, method, and computer program for scheduling access request to shared memory
US20060179172A1 (en) Method and system for reducing power consumption of a direct memory access controller
US6889283B2 (en) Method and system to promote arbitration priority in a buffer queue
JP4151362B2 (en) Bus arbitration method, data transfer device, and bus arbitration method
JP5104402B2 (en) Memory access control device
JP2006127408A (en) Data transfer system and its control method
JPH11110343A (en) Read controller
JP2003085125A (en) Memory controller and memory control method
JP2806405B2 (en) Microprocessor
JP2004185451A (en) Memory access arbitration method and memory access arbitration unit
JP2008097462A (en) Information processing device and information processing method
KR20070057441A (en) Multi-processor system with dual ahb masters structure based of amba bus

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090319

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090324

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090514

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090610

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

Free format text: PAYMENT UNTIL: 20120619

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

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

Free format text: PAYMENT UNTIL: 20120619

Year of fee payment: 3

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20120619

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20130619

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20140619

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees