Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP6180398B2 - Memory access device - Google Patents
[go: Go Back, main page]

JP6180398B2 - Memory access device - Google Patents

Memory access device Download PDF

Info

Publication number
JP6180398B2
JP6180398B2 JP2014219479A JP2014219479A JP6180398B2 JP 6180398 B2 JP6180398 B2 JP 6180398B2 JP 2014219479 A JP2014219479 A JP 2014219479A JP 2014219479 A JP2014219479 A JP 2014219479A JP 6180398 B2 JP6180398 B2 JP 6180398B2
Authority
JP
Japan
Prior art keywords
access
unit
queue
read
write
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.)
Active
Application number
JP2014219479A
Other languages
Japanese (ja)
Other versions
JP2016085684A (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 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 JP2014219479A priority Critical patent/JP6180398B2/en
Publication of JP2016085684A publication Critical patent/JP2016085684A/en
Application granted granted Critical
Publication of JP6180398B2 publication Critical patent/JP6180398B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Memory System (AREA)

Description

本発明は、メモリーアクセス装置に関する。   The present invention relates to a memory access device.

一般に、SDRAM(Synchronous Dynamic Random Access Memory)のデータ記憶領域は、複数のバンクに区分されており、前記バンク各々は複数のページに区分されている。前記SDRAMは、前記メモリーアクセス装置によって前記ページ単位で活性化され、活性化された前記ページがアクセス可能になる。   In general, a data storage area of an SDRAM (Synchronous Dynamic Random Access Memory) is divided into a plurality of banks, and each of the banks is divided into a plurality of pages. The SDRAM is activated in units of pages by the memory access device, and the activated pages can be accessed.

また、前記SDRAMにおいて、異なる前記バンク各々の前記ページを独立して活性化することが可能である。そのため、異なる前記バンクへのアクセスが続く場合、大きなオーバーヘッドが生じず、連続して高速なアクセスが可能である。   In the SDRAM, it is possible to independently activate the pages of the different banks. Therefore, when access to different banks continues, a large overhead does not occur, and continuous high-speed access is possible.

一方、1つの前記バンク内における異なる前記ページへのアクセスが続く場合、バンク競合による比較的大きなオーバーヘッドが生じる。即ち、1つの前記バンク内でのアクセスにおいては、先に活性化された前記ページのクローズ処理が終了した後に次の前記ページを活性化するステップが必要であり、このステップが前記バンク競合によるオーバーヘッドとなる。   On the other hand, if access to different pages in one bank continues, a relatively large overhead due to bank contention occurs. That is, in the access within one bank, a step of activating the next page after completion of the closing process of the previously activated page is necessary, and this step is an overhead due to the bank contention. It becomes.

一般に、前記SDRAMのようなメモリーに対するデータの書き込みおよび読み出しのためのアクセスは、メモリーアクセス装置によって制御される。また、前記メモリーアクセス装置が、マスターから入力されたメモリーへのアクセス要求の列を含むアクセス要求トランザクションを前記バンク単位のアクセス要求に分割し、分割された前記アクセス要求の順序を入れ替えた上で、前記アクセス要求に対応するコマンドを前記SDRAMに発行することが知られている(例えば、特許文献1参照)。この場合、前記コマンドの発行順序の最適化により、前記バンク競合によるオーバーヘッドの一部が隠蔽される。   In general, access for writing and reading data to and from a memory such as the SDRAM is controlled by a memory access device. Further, the memory access device divides an access request transaction including a sequence of access requests to the memory input from the master into access requests in units of banks, and after changing the order of the divided access requests, It is known to issue a command corresponding to the access request to the SDRAM (see, for example, Patent Document 1). In this case, a part of the overhead due to the bank contention is concealed by optimizing the order of issuing the commands.

特開2006−260472号公報JP 2006-260472 A

ところで、前記メモリーアクセス装置において、前記マスターからのリードアクセスの要求順序と、前記マスターへのリードデータの出力順序との整合性が求められる場合がある。また、複数のリードアクセスコマンドが発行された場合、前記リードアクセスコマンドの発行順序に対応して各データが並ぶリードデータ列が得られる。   By the way, in the memory access device, consistency between the read access request order from the master and the read data output order to the master may be required. Further, when a plurality of read access commands are issued, a read data string in which each data is arranged corresponding to the issuing order of the read access commands is obtained.

従って、前記メモリーアクセス装置は、前記リードアクセス要求の入力順序と異なる順序で複数の前記リードアクセスコマンドを発行する場合、前記リードアクセスコマンドの発行順序に対応した第1のリードデータ列と、本来の順序に並べ替えられた後の第2のリードデータ列とを保持する必要がある。この場合、前記メモリーアクセス装置において、データバッファーなどの追加のリソースが必要になる。さらに、前記リードデータ列の並べ替えのために、前記アクセス要求の入力から前記リードデータ列の出力までのレイテンシが増大する。   Accordingly, when the memory access device issues a plurality of the read access commands in an order different from the input order of the read access requests, the memory access device includes a first read data string corresponding to the issue order of the read access commands, It is necessary to hold the second read data string after being rearranged in the order. In this case, an additional resource such as a data buffer is required in the memory access device. Further, due to the rearrangement of the read data sequence, the latency from the input of the access request to the output of the read data sequence increases.

本発明の目的は、SDRAMなどのメモリーへのアクセスにおいて、リードアクセスの要求順序とリードデータの出力順序との整合性が求められる場合でも、リソースの追加およびレイテンシの増大を回避しつつ、バンク競合によるオーバーヘッドを隠蔽することができるメモリーアクセス装置を提供することにある。   The object of the present invention is to avoid the addition of resources and increase in latency while avoiding the addition of resources and the increase in latency even when the consistency between the read access request order and the read data output order is required when accessing a memory such as SDRAM. An object of the present invention is to provide a memory access device that can conceal the overhead caused by the above.

本発明の一の局面に係るメモリーアクセス装置は、メモリーに対してアクセスコマンドを発行するメモリーアクセス装置である。前記メモリーは、複数のバンクに区分されているとともに前記バンク各々が複数のページに区分されたデータ記憶領域を有する。前記メモリーアクセス装置は、アクセス要求分別部と、第1キューイングバッファーと、第2キューイングバッファーと、リードキュー区分部と、ライトキュー区分部と、コマンド発行部とを備える。前記アクセス要求列分別部は、外部から入力される前記メモリーへのアクセス要求の列を含むアクセス要求トランザクションをリードアクセス要求が並ぶリードアクセスキューとライトアクセス要求が並ぶライトアクセスキューとに分別する。前記第1キューイングバッファーは、前記リードアクセスキューを一時記憶する。前記第2キューイングバッファーは、前記ライトアクセスキューを一時記憶する。前記リードキュー区分部は、前記リードアクセスキューをそれぞれ1つ以上の前記リードアクセス要求を含む複数の単位リードキューに区分する。前記リードキュー区分部は、前記リードアクセスキューを前記メモリーにおける同一の前記バンク内の異なる前記ページをアクセス先とする連続する2つの前記リードアクセス要求の間で区分する。前記ライトキュー区分部は、前記ライトアクセスキューをそれぞれ1つ以上の前記ライトアクセス要求を含む複数の単位ライトキューに区分する。前記ライトキュー区分部は、前記ライトアクセスキューを前記メモリーにおける同一の前記バンク内の異なる前記ページをアクセス先とする連続する2つの前記ライトアクセス要求の間で区分する。前記コマンド発行部は、前記単位リードキュー各々を前記アクセス要求トランザクション内での前記リードアクセス要求の順序に従って順次選択する。さらに、前記コマンド発行部は、前記単位ライトキュー各々を順次選択する。さらに、前記コマンド発行部は、少なくとも前記第1キューイングバッファー内の全ての前記単位リードキューに対応するコマンドまたは前記第2キューイングバッファー内の全ての前記単位ライトキューに対応するコマンドが発行されるまで選択した前記単位リードキューと前記単位ライトキューとを交互に前記メモリーに発行する。   A memory access device according to one aspect of the present invention is a memory access device that issues an access command to a memory. The memory has a data storage area which is divided into a plurality of banks and each bank is divided into a plurality of pages. The memory access device includes an access request sorting unit, a first queuing buffer, a second queuing buffer, a read queue sorting unit, a write queue sorting unit, and a command issuing unit. The access request sequence sorting unit sorts an access request transaction including a sequence of access requests to the memory input from the outside into a read access queue in which read access requests are arranged and a write access queue in which write access requests are arranged. The first queuing buffer temporarily stores the read access queue. The second queuing buffer temporarily stores the write access queue. The read queue sorting unit sorts the read access queue into a plurality of unit read queues each including one or more read access requests. The read queue sorting unit sorts the read access queue between two consecutive read access requests that have different pages in the same bank in the memory as access destinations. The write queue sorting unit sorts the write access queue into a plurality of unit write queues each including one or more write access requests. The write queue sorting unit sorts the write access queue between two consecutive write access requests that have different pages in the same bank in the memory as access destinations. The command issuing unit sequentially selects each unit read queue according to the order of the read access requests in the access request transaction. Further, the command issuing unit sequentially selects each of the unit write queues. Further, the command issuing unit issues at least a command corresponding to all the unit read queues in the first queuing buffer or a command corresponding to all the unit write queues in the second queuing buffer. The unit read queue and the unit write queue selected up to are issued to the memory alternately.

本発明によればSDRAMなどのメモリーへのアクセスにおいて、リードアクセスの要求順序とリードデータの出力順序との整合性が求められる場合でも、リソースの追加およびレイテンシの増大を回避しつつ、バンク競合によるオーバーヘッドを隠蔽することができるメモリーアクセス装置を提供することが可能になる。   According to the present invention, even when the consistency between the read access request order and the read data output order is required in access to a memory such as an SDRAM, it is possible to avoid the addition of resources and increase in latency while avoiding the increase in latency. It becomes possible to provide a memory access device capable of concealing overhead.

図1は、本発明の第1実施形態に係るメモリーアクセス装置を備える画像処理装置のブロック図である。FIG. 1 is a block diagram of an image processing apparatus including a memory access apparatus according to the first embodiment of the present invention. 図2は、本発明の第1実施形態に係るメモリーアクセス装置のブロック図である。FIG. 2 is a block diagram of the memory access apparatus according to the first embodiment of the present invention. 図3は、アクセス要求トランザクションの各アクセス要求に対応するコマンドがそのまま発行された場合および本発明の第1実施形態に係るメモリーアクセス装置が各アクセス要求に対応するコマンドを発行した場合の各々におけるコマンド実行状況の一例を模式的に示すタイムチャートである。FIG. 3 shows commands when the command corresponding to each access request of the access request transaction is issued as it is and when the memory access device according to the first embodiment of the present invention issues a command corresponding to each access request. It is a time chart which shows an example of an execution situation typically. 図4は、本発明の第1実施形態に係るメモリーアクセス装置が一時記憶するリードアクセスキューおよびライトアクセスキューの一例を模式的に示す図である。FIG. 4 is a diagram schematically illustrating an example of a read access queue and a write access queue temporarily stored in the memory access device according to the first embodiment of the present invention. 図5は、本発明の第2実施形態に係るメモリーアクセス装置のブロック図である。FIG. 5 is a block diagram of a memory access apparatus according to the second embodiment of the present invention.

以下、添付図面を参照しながら、本発明の実施形態について説明する。なお、以下の実施形態は、本発明を具体化した一例であって、本発明の技術的範囲を限定する性格を有さない。   Hereinafter, embodiments of the present invention will be described with reference to the accompanying drawings. In addition, the following embodiment is an example which actualized this invention, Comprising: It does not have the character which limits the technical scope of this invention.

[第1実施形態]
まず、図1を参照しつつ、本発明の第1実施形態に係るメモリーアクセス装置10を備える画像処理装置100の概略構成について説明する。画像処理装置100は、メモリーアクセス装置10の適用例の1つである。
[First Embodiment]
First, a schematic configuration of an image processing apparatus 100 including a memory access device 10 according to the first embodiment of the present invention will be described with reference to FIG. The image processing apparatus 100 is one application example of the memory access apparatus 10.

図1が示す画像処理装置100は、原稿から画像を読み取る画像読取装置の機能および記録シートへ画像を形成する画像形成装置の機能を兼ね備えた複合機である。なお、画像処理装置100が、前記画像形成装置、前記画像読取装置、前記画像形成装置および前記画像読取装置の機能を備える複写機または前記画像読取装置の機能および画像送信機能を備えるファクシミリ装置などであることも考えられる。   An image processing apparatus 100 shown in FIG. 1 is a multifunction machine that has both a function of an image reading apparatus that reads an image from a document and a function of an image forming apparatus that forms an image on a recording sheet. Note that the image processing apparatus 100 is the image forming apparatus, the image reading apparatus, the image forming apparatus, a copying machine having the functions of the image reading apparatus, or a facsimile apparatus having the functions of the image reading apparatus and the image transmission function. There is also a possibility.

画像処理装置100は、SDRAM9、メモリーアクセス装置10、スキャン部20、スキャン制御部30、プリント部40、プリント制御部50、通信制御部60および画像処理部70などを備える。メモリーアクセス装置10、スキャン制御部30、プリント制御部50、通信制御部60および画像処理部70は、それぞれバス80に接続されおり、バス80を通じて相互にデータの受け渡しが可能である。   The image processing apparatus 100 includes an SDRAM 9, a memory access device 10, a scan unit 20, a scan control unit 30, a print unit 40, a print control unit 50, a communication control unit 60, an image processing unit 70, and the like. The memory access device 10, the scan control unit 30, the print control unit 50, the communication control unit 60, and the image processing unit 70 are each connected to a bus 80 and can exchange data with each other through the bus 80.

スキャン部20は、前記原稿に光を走査する不図示の光学系、および原稿からの反射光の光量を画素ごとに検出して原稿画像データを出力する不図示のイメージセンサーなどを備える。   The scanning unit 20 includes an optical system (not shown) that scans the original with light, an image sensor (not shown) that detects the amount of reflected light from the original for each pixel, and outputs original image data.

スキャン制御部30は、スキャン部20を制御して前記原稿画像データを取得する。さらに、スキャン制御部30は、メモリーアクセス装置10を通じて前記原稿画像データをSDRAM9に書き込む処理なども実行する。例えば、スキャン制御部30は、SDRAM9を介して前記原稿画像データを画像処理部70、プリント制御部50または通信制御部60などの他の機器に引き渡す場合がある。   The scan control unit 30 controls the scan unit 20 to acquire the original image data. Further, the scan control unit 30 also executes a process of writing the original image data into the SDRAM 9 through the memory access device 10. For example, the scan control unit 30 may deliver the document image data to another device such as the image processing unit 70, the print control unit 50, or the communication control unit 60 via the SDRAM 9.

プリント部40は、周知の電子写真方式の画像形成処理によって前記記録シートに画像を形成する。プリント部40は、不図示の像担持体およびその周辺機器を備え、前記像担持体から前記記録シートに現像剤の画像を転写するとともにその画像を前記記録シートに定着させる。   The print unit 40 forms an image on the recording sheet by a known electrophotographic image forming process. The print unit 40 includes an image carrier (not shown) and its peripheral devices, and transfers an image of the developer from the image carrier to the recording sheet and fixes the image on the recording sheet.

プリント制御部50は、プリント部40を制御する。プリント制御部50は、他の機器から記録用画像データを取得し、その記録用画像データ基づく画像を前記記録シートに形成する処理をプリント部40に実行させる。   The print control unit 50 controls the print unit 40. The print control unit 50 acquires recording image data from another device, and causes the printing unit 40 to execute processing for forming an image based on the recording image data on the recording sheet.

通信制御部60は、パーソナルコンピューターなどの外部装置との間でデータの送受信を行うとともに、バス80を通じて他の機器とデータの受け渡しを行う。例えば、通信制御部60は、前記外部機器から画像データを受信し、その画像データを前記記録用画像データとして前記プリント制御部50に引き渡す。   The communication control unit 60 transmits / receives data to / from an external device such as a personal computer, and exchanges data with other devices via the bus 80. For example, the communication control unit 60 receives image data from the external device, and delivers the image data to the print control unit 50 as the recording image data.

また、通信制御部60は、スキャン制御部30から前記原稿画像データを取得し、その原稿画像データを含むデータを前記外部装置へ送信する。   Further, the communication control unit 60 acquires the document image data from the scan control unit 30 and transmits data including the document image data to the external device.

画像処理部70は、バス80を通じて他の機器から得た画像データに対する画像処理を実行する。画像処理部70による画像処理の対象は、例えば、スキャン制御部30から前記通信制御部60を通じて前記外部装置へ送信される画像データまたは前記スキャン制御部30から前記プリント制御部50へ引き渡される前記原稿画像データなどである。例えば、画像処理部70は、他の機器から得た前記画像データに対し、画像回転処理、ハーフトーン処理またはサイズカット処理などの画像処理を施す。   The image processing unit 70 performs image processing on image data obtained from another device via the bus 80. The target of image processing by the image processing unit 70 is, for example, image data transmitted from the scan control unit 30 to the external device through the communication control unit 60 or the original document delivered from the scan control unit 30 to the print control unit 50. For example, image data. For example, the image processing unit 70 performs image processing such as image rotation processing, halftone processing, or size cut processing on the image data obtained from another device.

SDRAM9は、高速でデータの書き込みおよび読み出しが可能なメモリーである。SDRAM9は、バス80に接続された機器から発行されるアクセスコマンドの内容に従ってそのデータ領域へのデータの記録および前記データ領域に記録されているデータの出力を行う。   The SDRAM 9 is a memory capable of writing and reading data at high speed. The SDRAM 9 records data in the data area and outputs the data recorded in the data area according to the contents of the access command issued from the device connected to the bus 80.

SDRAM9の前記データ記憶領域は、複数のバンクに区分されており、前記バンク各々が複数のページに区分されている。SDRAM9は、メモリーアクセス装置10によって前記ページ単位で活性化され、活性化された前記ページがアクセス可能になる。   The data storage area of the SDRAM 9 is divided into a plurality of banks, and each of the banks is divided into a plurality of pages. The SDRAM 9 is activated in units of pages by the memory access device 10, and the activated pages can be accessed.

SDRAM9において、1つの前記バンク内の前記ページと他の前記バンク内の前記ページとを独立して活性化することが可能である。そのため、異なる前記バンクへのアクセスが続く場合、大きなオーバーヘッドが生じず、連続して高速なアクセスが可能である。   In the SDRAM 9, it is possible to independently activate the page in one bank and the page in another bank. Therefore, when access to different banks continues, a large overhead does not occur, and continuous high-speed access is possible.

一方、1つの前記バンク内における異なる前記ページへのアクセスが続く場合、バンク競合による比較的大きなオーバーヘッドが生じる。   On the other hand, if access to different pages in one bank continues, a relatively large overhead due to bank contention occurs.

例えば、同一の前記バンクにおける第1ページおよび第2ページ各々へのリードアクセスコマンドが連続して発行される場合を考える。この場合、先に活性化された前記第1ページのクローズ処理が終了した後に前記第2ページを活性化するステップが必要である。このステップにおいて、前記第1ページの前記クローズ処理に要する時間が比較的長いため、前記第2ページの活性化コマンドの発行までの待ち時間が、前記バンク競合によるオーバーヘッドとなる。   For example, consider a case where read access commands to the first page and the second page in the same bank are issued successively. In this case, a step of activating the second page after the closing process of the previously activated first page is necessary. In this step, since the time required for the closing process of the first page is relatively long, the waiting time until the activation command for the second page becomes an overhead due to the bank contention.

また、一般的なSDRAM9において、アクセス先に関わらず、リードアクセスおよびライトアクセスの一方と他方とが連続する場合、アクセスの種類の切り替わりによるオーバーヘッドが生じる。このオーバーヘッドは、前記バンク競合によるオーバーヘッドと同程度に比較的大きなオーバーヘッドである。   Further, in the general SDRAM 9, when one of the read access and the write access is continuous regardless of the access destination, an overhead due to switching of the access type occurs. This overhead is comparatively large as the bank contention overhead.

本実施形態では、主としてメモリーアクセス装置10がSDRAM9に対して前記アクセスコマンドを発行する。この場合、スキャン制御部30、プリント制御部50、通信制御部60および画像処理部70の各々が、バス80を通じてメモリーアクセス装置10に向けてSDRAM9へのアクセス要求の列を含むアクセス要求トランザクションを出力する。一般に、メモリーアクセス装置10は、DMAC(Direct Memory Access Controller)などと称される。前記アクセス要求の1つはリードアクセス要求であり、これに対応する前記アクセスコマンドはリードアクセスコマンドである。前記アクセス要求の他の1つはライトアクセス要求であり、これに対応する前記アクセスコマンドはライトアクセスコマンドである。   In the present embodiment, the memory access device 10 mainly issues the access command to the SDRAM 9. In this case, each of the scan control unit 30, the print control unit 50, the communication control unit 60, and the image processing unit 70 outputs an access request transaction including an access request sequence to the SDRAM 9 to the memory access device 10 through the bus 80. To do. In general, the memory access device 10 is called a DMAC (Direct Memory Access Controller) or the like. One of the access requests is a read access request, and the corresponding access command is a read access command. Another one of the access requests is a write access request, and the access command corresponding to this is a write access command.

以下の説明において、メモリーアクセス装置10に対して前記アクセス要求トランザクションを出力する機器のことを、メモリーアクセス装置10に対してマスターと称する。本実施形態における前記マスターは、スキャン制御部30、プリント制御部50、通信制御部60および画像処理部70の各々である。なお、前記マスターがクライアントと称される場合もある。   In the following description, a device that outputs the access request transaction to the memory access device 10 is referred to as a master for the memory access device 10. The master in the present embodiment is each of the scan control unit 30, the print control unit 50, the communication control unit 60, and the image processing unit 70. The master may be referred to as a client.

メモリーアクセス装置10は、SDRAM9に対して前記アクセスコマンドを発行する装置である。メモリーアクセス装置10は、前記マスターから入力されるアクセス要求トランザクションに含まれるアクセス要求キューを前記オーバーヘッドが減少するように並べ替え、並べ替え後の順序で前記アクセスコマンドをSDRAM9へ発行する。前記アクセス要求キューは、SDRAM9に対する前記アクセス要求の列である。   The memory access device 10 is a device that issues the access command to the SDRAM 9. The memory access device 10 rearranges the access request queue included in the access request transaction input from the master so as to reduce the overhead, and issues the access command to the SDRAM 9 in the order after the rearrangement. The access request queue is a sequence of the access requests for the SDRAM 9.

ところで、前記マスターからのリードアクセスの要求順序と、前記マスターへのリードデータの出力順序との整合性が求められる場合がある。また、複数のリードアクセスコマンドが発行された場合、前記リードアクセスコマンドの発行順序に対応して各データが並ぶリードデータ列が得られる。   Incidentally, there is a case where consistency between the read access request order from the master and the read data output order to the master is required. Further, when a plurality of read access commands are issued, a read data string in which each data is arranged corresponding to the issuing order of the read access commands is obtained.

従って、前記アクセス要求トランザクション内のリードアクセス要求の順序と異なる順序で複数の前記リードアクセスコマンドが発行される場合、前記リードアクセスコマンドの発行順序で並ぶ第1のリードデータ列と、本来の順序に並べ替えられた後の第2のリードデータ列とを保持することが必要になる。この場合、データバッファーなどの追加のリソースが必要になる。さらに、前記リードデータ列の並べ替えのために、前記アクセス要求の入力から前記リードデータ列の出力までのレイテンシが増大する。   Therefore, when a plurality of the read access commands are issued in an order different from the order of the read access requests in the access request transaction, the first read data string arranged in the order of issuing the read access commands and the original order It is necessary to hold the second read data string after the rearrangement. In this case, additional resources such as a data buffer are required. Further, due to the rearrangement of the read data sequence, the latency from the input of the access request to the output of the read data sequence increases.

メモリーアクセス装置10は、後述する構成を備えることにより、SDRAM9へのアクセスにおいて、リードアクセスの要求順序とリードデータの出力順序との整合性が求められる場合でも、前記リソースの追加および前記レイテンシの増大を回避しつつ、前記バンク競合による前記オーバーヘッドを隠蔽することができる。   The memory access device 10 has a configuration to be described later, so that in the access to the SDRAM 9, even when consistency between the read access request order and the read data output order is required, the addition of the resource and the increase of the latency are performed. The overhead due to the bank contention can be concealed.

[メモリーアクセス装置]
次に、図2を参照しつつ、メモリーアクセス装置10について説明する。メモリーアクセス装置10は、要求トランザクション入力部1と、アクセス要求分別部2と、第1キューイングバッファー3と、第2キューイングバッファー4と、アクセスキュー区分部5と、コマンド発行部6と、メモリーアクセス部7とを備える。
[Memory access device]
Next, the memory access device 10 will be described with reference to FIG. The memory access device 10 includes a request transaction input unit 1, an access request sorting unit 2, a first queuing buffer 3, a second queuing buffer 4, an access queue sorting unit 5, a command issuing unit 6, a memory And an access unit 7.

アクセスキュー区分部5は、リードキュー区分部51およびライトキュー区分部52を含む。コマンド発行部6は、単位リードキュー選択部61と、単位ライトキュー選択部62と、コマンド交互発行部63とを含む。   The access queue sorting unit 5 includes a read queue sorting unit 51 and a write queue sorting unit 52. The command issuing unit 6 includes a unit read queue selecting unit 61, a unit write queue selecting unit 62, and a command alternate issuing unit 63.

メモリーアクセス部7は、コマンド発行調整部71と、リードデータバッファー72と、データ出力部73と、ライトデータバッファー74と、データ入力部75とを含む。   The memory access unit 7 includes a command issue adjustment unit 71, a read data buffer 72, a data output unit 73, a write data buffer 74, and a data input unit 75.

メモリーアクセス装置10は、例えばASIC(Application Specific Integrated Circuit)またはDSP(digital Signal Processor)などによって構成されている。   The memory access device 10 is configured by, for example, an application specific integrated circuit (ASIC) or a digital signal processor (DSP).

要求トランザクション入力部1は、SDRAM9への前記アクセス要求の列を含むアクセス要求トランザクションを前記マスターから取得する処理を実行する。前記アクセス要求トランザクションは、バス80を通じて前記マスターから要求トランザクション入力部1へ入力される。   The request transaction input unit 1 executes a process of acquiring an access request transaction including a sequence of the access request to the SDRAM 9 from the master. The access request transaction is input from the master to the request transaction input unit 1 through the bus 80.

前記アクセス要求トランザクションは、SDRAM9に対して前記データ記憶領域に記憶されているデータを読み出す処理を要求する前記リードアクセス要求と、SDRAM9に対して前記データ記憶領域にデータを記録する処理を要求する前記ライトアクセスとを含む。前記リードアクセス要求および前記ライトアクセス要求は、その要求の種類の情報と、前記データ記憶領域におけるアドレスを指定する行アドレス情報および列アドレス情報とを含む。   The access request transaction requests the SDRAM 9 to read the data stored in the data storage area, and requests the SDRAM 9 to record data in the data storage area. Including write access. The read access request and the write access request include information on the type of the request, and row address information and column address information specifying an address in the data storage area.

アクセス要求分別部2は、前記マスターから入力されるメモリーアクセスの前記アクセス要求トランザクションをリードアクセスキューとライトアクセスキューとに分別する。前記リードアクセスキューは、前記リードアクセス要求が並ぶキューであり、前記ライトアクセス要求が並ぶキューである。   The access request sorting unit 2 sorts the access request transaction for memory access input from the master into a read access queue and a write access queue. The read access queue is a queue in which the read access requests are arranged, and is a queue in which the write access requests are arranged.

アクセス要求分別部2は、前記アクセス要求トランザクションにおける複数の前記リードアクセス要求相互の順番を変更することなく前記リードアクセスキューを生成する。また、アクセス要求分別部2は、前記アクセス要求トランザクションにおける複数の前記ライトアクセス要求相互の順番を変更することなく前記ライトアクセスキューを生成する。   The access request sorting unit 2 generates the read access queue without changing the order of the plurality of read access requests in the access request transaction. The access request sorting unit 2 generates the write access queue without changing the order of the plurality of write access requests in the access request transaction.

即ち、アクセス要求分別部2は、前記アクセス要求トランザクションを連続する前記リードアクセス要求と前記ライトアクセス要求との間において分割する。さらに、アクセス要求分別部2は、分割により得られる複数の前記リードアクセス要求を前記アクセス要求トランザクション内での順序のまま前記リードアクセスキューとして編成する。また、アクセス要求分別部2は、分割により得られる複数の前記ライトアクセス要求を前記アクセス要求トランザクション内での順序のまま前記ライトアクセスキューとして編成する。   In other words, the access request sorting unit 2 divides the access request transaction between the read access request and the write access request that are consecutive. Further, the access request sorting unit 2 organizes the plurality of read access requests obtained by the division as the read access queue in the order in the access request transaction. Further, the access request sorting unit 2 organizes the plurality of write access requests obtained by the division as the write access queue in the order in the access request transaction.

前述したように、前記リードアクセス要求および前記ライトアクセス要求の一方と他方とが連続する場合、即ち、前記リードアクセスコマンドおよび前記ライトアクセスコマンドの一方と他方とが連続する場合、アクセスの種類の切り替わりによるオーバーヘッドが発生する。以下、このオーバーヘッドのことをアクセス切替オーバーヘッドと称する。アクセス要求分別部2は、前記アクセス要求トランザクションを前記アクセス切替オーバーヘッドが生じる位置で分割する。   As described above, when one and the other of the read access request and the write access request are continuous, that is, when one and the other of the read access command and the write access command are continuous, the type of access is switched. Causes overhead. Hereinafter, this overhead is referred to as access switching overhead. The access request sorting unit 2 divides the access request transaction at a position where the access switching overhead occurs.

第1キューイングバッファー3は、前記リードアクセスキューを一時記憶するバッファーである。第2キューイングバッファー4は、前記ライトアクセスキューを一時記憶するバッファーである。即ち、アクセス要求分別部2は、前記リードアクセスキューを第1キューイングバッファー3に記録し、前記ライトアクセスキューを第2キューイングバッファー4に記録する。   The first queuing buffer 3 is a buffer for temporarily storing the read access queue. The second queuing buffer 4 is a buffer for temporarily storing the write access queue. That is, the access request sorting unit 2 records the read access queue in the first queuing buffer 3 and records the write access queue in the second queuing buffer 4.

アクセスキュー区分部5は、前記リードアクセスキューおよび前記ライトアクセスキューの各々を、SDRAM9に対して発行されるそれぞれ1まとまりの前記アクセス要求の列である複数の単位アクセスキューに区分する処理を実行する。   The access queue sorting unit 5 executes a process of sorting each of the read access queue and the write access queue into a plurality of unit access queues, each of which is a group of the access requests issued to the SDRAM 9. .

リードキュー区分部51は、前記リードアクセスキューをそれぞれ1つ以上の前記リードアクセス要求を含む複数の単位リードキューに区分する。ライトキュー区分部52は、前記ライトアクセスキューをそれぞれ1つ以上の前記ライトアクセス要求を含む複数の単位リードキューに区分する。   The read queue sorting unit 51 sorts the read access queue into a plurality of unit read queues each including one or more read access requests. The write queue sorting unit 52 sorts the write access queue into a plurality of unit read queues each including one or more write access requests.

リードキュー区分部51は、前記リードアクセスキューをSDRAM9における同一の前記バンク内の異なる前記ページをアクセス先とする連続する2つの前記リードアクセス要求の間で区分する。前述したように、同一の前記バンク内の異なる前記ページをアクセス先とする連続する2つの前記リードアクセス要求の間においては、それらに対応するコマンドが発行されるときに前記バンク競合によるオーバーヘッドが発生する。   The read queue sorting unit 51 sorts the read access queue between two consecutive read access requests that have different pages in the same bank in the SDRAM 9 as access destinations. As described above, an overhead due to the bank conflict occurs between two consecutive read access requests to which different pages in the same bank are accessed as the corresponding commands are issued. To do.

同様に、ライトキュー区分部52は、前記ライトアクセスキューを前記メモリーにおける同一の前記バンク内の異なる前記ページをアクセス先とする連続する2つの前記ライトアクセス要求の間で区分する。同一の前記バンク内の異なる前記ページをアクセス先とする連続する2つの前記ライトアクセス要求の間においては、それらに対応するコマンドが発行されるときに前記バンク競合によるオーバーヘッドが発生する。   Similarly, the write queue sorting unit 52 sorts the write access queue between two consecutive write access requests that have different pages in the same bank in the memory as access destinations. Between two consecutive write access requests that have different pages in the same bank as access destinations, overhead due to bank contention occurs when commands corresponding to them are issued.

以下、前記バンク競合によるオーバーヘッドのことをバンク競合オーバーヘッドと称する。アクセスキュー区分部5は、前記リードアクセスキューおよび前記ライトアクセスキューの各々を、前記バンク競合オーバーヘッドが生じる位置で区分する。   Hereinafter, the overhead due to bank contention is referred to as bank contention overhead. The access queue sorting unit 5 sorts each of the read access queue and the write access queue at a position where the bank contention overhead occurs.

アクセスキュー区分部5は、予め定められた計算ルールに従って、前記アクセス要求トランザクション内の複数の前記アクセス要求各々に対応するコマンドが発行された場合に生じるオーバーヘッドの時間を計算することができる。   The access queue sorting unit 5 can calculate the overhead time that occurs when a command corresponding to each of the plurality of access requests in the access request transaction is issued according to a predetermined calculation rule.

例えば、リードキュー区分部51は、前記リードアクセスキューにおける前記リードアクセス要求各々に対応するコマンドが、先頭側から順に連続して発行された場合に生じる前記バンク競合オーバーヘッドの時間を積算する。そして、リードキュー区分部51は、前記バンク競合オーバーヘッドの時間の積算結果が予め定められた許容範囲に収まる前記リードアクセス要求の列ごとに、そのリードアクセス要求の列を前記単位リードキューとして区分する。   For example, the read queue sorting unit 51 accumulates the time of the bank contention overhead that occurs when commands corresponding to each of the read access requests in the read access queue are sequentially issued from the head side. Then, the read queue sorting unit 51 sorts the read access request column as the unit read queue for each read access request column in which the accumulation result of the bank conflict overhead time falls within a predetermined allowable range. .

同様に、ライトキュー区分部52は、前記ライトアクセスキューにおける前記ライト要求各々に対応するコマンドが、先頭側から順に連続して発行された場合に生じる前記バンク競合オーバーヘッドの時間を積算する。そして、ライトキュー区分部52は、前記バンク競合オーバーヘッドの時間の積算結果が予め定められた許容範囲に収まる前記ライトアクセス要求の列ごとに、そのライトアクセス要求の列を前記単位ライトキューとして区分する。   Similarly, the write queue sorting unit 52 accumulates the time of the bank contention overhead that occurs when commands corresponding to the write requests in the write access queue are successively issued in order from the head side. Then, the write queue sorting unit 52 sorts the write access request column as the unit write queue for each column of the write access request in which the accumulation result of the bank conflict overhead time falls within a predetermined allowable range. .

前記リードアクセスキューにおける前記単位リードキュー各々の区分位置の情報は、リードキュー区分部51から単位リードキュー選択部61へ通知される。同様に、前記ライトアクセスキューにおける前記単位ライトキュー各々の区分位置の情報は、ライトキュー区分部52から単位ライトキュー選択部62へ通知される。   Information about the division position of each unit read queue in the read access queue is notified from the read queue division unit 51 to the unit read queue selection unit 61. Similarly, information on the division position of each unit write queue in the write access queue is notified from the write queue division unit 52 to the unit write queue selection unit 62.

コマンド発行部6の単位リードキュー選択部61は、第1キューイングバッファー3に記憶されている前記単位リードキューを1つずつ選択する処理を実行する。その際、単位リードキュー選択部61は、前記アクセス要求トランザクション内での前記リードアクセス要求の順序に従って前記単位リードキュー各々を順次選択する。   The unit read queue selection unit 61 of the command issuing unit 6 executes a process of selecting the unit read queues stored in the first queuing buffer 3 one by one. At that time, the unit read queue selection unit 61 sequentially selects each of the unit read queues according to the order of the read access requests in the access request transaction.

コマンド発行部6の単位ライトキュー選択部62は、第2キューイングバッファー4に記憶されている前記単位ライトキューを1つずつ選択する処理を実行する。その際、単位ライトキュー選択部62は、単位リードキュー選択部61が順次選択する前記単位リードキューと単位ライトキュー選択部62が順次選択する前記単位ライトキューとが交互に発行された場合に、キャッシュコヒーレンシが維持されることを制約条件として前記単位ライトキューを順次選択する。   The unit write queue selection unit 62 of the command issuing unit 6 executes a process of selecting the unit write queues stored in the second queuing buffer 4 one by one. At that time, the unit write queue selection unit 62, when the unit read queues sequentially selected by the unit read queue selection unit 61 and the unit write queues sequentially selected by the unit write queue selection unit 62 are issued alternately, The unit write queues are sequentially selected under the condition that cache coherency is maintained.

コマンド発行部6のコマンド交互発行部63は、単位リードキュー選択部61が順次選択する前記単位リードキューに対応するコマンドと、単位ライトキュー選択部62が順次選択する前記単位ライトキューに対応するコマンドとを交互にSDRAM9に発行する。本実施形態では、コマンド交互発行部63は、少なくとも第1キューイングバッファー3内の全ての前記単位リードキューに対応するコマンドまたは第2キューイングバッファー4内の全ての前記単位ライトキューに対応するコマンドが発行されるまで、前記単位リードキューに対応するコマンドおよび前記単位ライトキューに対応するコマンドを交互にSDRAM9に発行する。その際、コマンド交互発行部63は、後述するコマンド発行調整部71を介して前記単位リードキューおよび前記単位ライトキューの各々に対応するコマンドをSDRAM9に発行する。   The command alternate issuing unit 63 of the command issuing unit 6 includes a command corresponding to the unit read queue sequentially selected by the unit read queue selecting unit 61 and a command corresponding to the unit write queue sequentially selected by the unit write queue selecting unit 62. Are issued to the SDRAM 9 alternately. In the present embodiment, the command alternate issue unit 63 at least commands corresponding to all the unit read queues in the first queuing buffer 3 or commands corresponding to all the unit write queues in the second queuing buffer 4. Until the command is issued, the command corresponding to the unit read queue and the command corresponding to the unit write queue are alternately issued to the SDRAM 9. At this time, the command alternate issue unit 63 issues commands corresponding to each of the unit read queue and the unit write queue to the SDRAM 9 via a command issue adjustment unit 71 described later.

前記単位リードキューおよび前記単位ライトキューの一方の全てについて選択および対向コマンドの発行が行われた後、コマンド交互発行部63は、第1キューイングバッファー3または第2キューイングバッファー4において未選択のまま残っている前記単位リードキューまたは前記単位ライトキューを順次選択し、選択したキューに対応するコマンドを順次発行する。   After selection and issuance of the opposite command are performed for all of one of the unit read queue and the unit write queue, the command alternate issue unit 63 is not selected in the first queuing buffer 3 or the second queuing buffer 4. The unit read queue or the unit write queue that remains is sequentially selected, and commands corresponding to the selected queue are sequentially issued.

前記制約条件は、SDRAM9の前記データ記憶領域の同一アドレスをアクセス対象とする前記単位リードキューおよび前記単位ライトキューが存在する場合に、前記要求トランザクションにおけるそれらの前後の関係を維持することである。   The constraint condition is to maintain the relationship before and after the request transaction when the unit read queue and the unit write queue that access the same address of the data storage area of the SDRAM 9 exist.

以下の説明において、最後に発行された前記単位リードキューのコマンドにおける最後の前記リードアクセスコマンドのことを直近リードアクセスコマンドと称する。   In the following description, the last read access command in the last issued unit read queue command is referred to as the latest read access command.

例えば、単位ライトキュー選択部62が、前記キャッシュコヒーレンシが維持されることを制約条件として、以下に示されるようなオーバーヘッド時間の比較に基づく選択ルールに従って前記単位ライトキューを選択することが考えられる。   For example, it is conceivable that the unit write queue selection unit 62 selects the unit write queue according to a selection rule based on a comparison of overhead times as described below, with the constraint that the cache coherency is maintained.

前記選択ルールは、前記直近リードアクセスコマンドとの間で生じる前記アクセス切替オーバーヘッドの時間が、前記直近リードアクセスコマンドと次の次に発行予定の前記単位リードキューにおける最初の前記リードアクセス要求に対応するコマンドとの間で生じる前記バンク競合オーバーヘッドの時間に最も近い前記単位ライトキューを選択するというルールである。   In the selection rule, the time of the access switching overhead occurring between the most recent read access command corresponds to the first read access request in the unit read queue to be issued next and the most recent read access command. The rule is to select the unit write queue closest to the time of the bank contention overhead occurring between commands.

コマンド発行調整部71は、コマンド発行部6から順次発行される前記単位リードキューおよび前記単位ライトキュー各々に対応する前記リードアクセスコマンドおよび前記ライトアクセスコマンドを、コマンド発行部6からの発行順序のままSDRAM9に発行する。その際、コマンド発行調整部71は、前記リードアクセスコマンドおよび前記ライトアクセスコマンドに付随して必要な活性化コマンドおよびプリチャージコマンドもSDRAM9に発行する。   The command issuance adjustment unit 71 issues the read access command and the write access command corresponding to the unit read queue and the unit write queue, which are sequentially issued from the command issuing unit 6, in the issue order from the command issuing unit 6. Issue to SDRAM9. At this time, the command issuance adjustment unit 71 also issues an activation command and a precharge command necessary for the read access command and the write access command to the SDRAM 9.

より具体的には、コマンド発行調整部71は、前記行アドレス情報を含む前記活性化コマンドを発行した後に、前記列アドレス情報を含む前記リードアクセスコマンドまたは前記ライトアクセスコマンドを発行し、さらに前記プリチャージコマンドを発行する。コマンド発行調整部71は、SDRAM9の仕様によって予め定められたタイミングで各コマンドを発行する。   More specifically, the command issue adjustment unit 71 issues the read access command or the write access command including the column address information after issuing the activation command including the row address information, and Issue a charge command. The command issue adjustment unit 71 issues each command at a timing determined in advance by the specification of the SDRAM 9.

コマンド発行部6によって発行された前記単位リードキューおよび前記単位ライトキューの各々は、第1キューイングバッファー3および第2キューイングバッファー4の各々から消去される。   Each of the unit read queue and the unit write queue issued by the command issuing unit 6 is erased from each of the first queuing buffer 3 and the second queuing buffer 4.

リードデータバッファー72は、前記リードアクセスコマンドの発行に応じてSDRAM9から読み出されたリードデータを一時記憶するバッファーである。データ出力部73は、リードデータバッファー72内の前記リードデータを、バス80を通じて前記マスターへ転送するインターフェイスである。   The read data buffer 72 is a buffer for temporarily storing read data read from the SDRAM 9 in response to the issue of the read access command. The data output unit 73 is an interface for transferring the read data in the read data buffer 72 to the master through the bus 80.

前記リードデータの転送先は、コマンド発行部6からコマンド発行調整部71を通じてSDRAM9に発行された前記リードアクセスコマンドを含む前記アクセス要求トランザクションを出力した前記マスターである。前記マスターへ転送された前記リードデータは、リードデータバッファー72から消去される。   The transfer destination of the read data is the master that has output the access request transaction including the read access command issued from the command issuing unit 6 to the SDRAM 9 through the command issue adjusting unit 71. The read data transferred to the master is erased from the read data buffer 72.

データ入力部75は、前記マスターから前記ライトアクセス要求を含む前記アクセス要求トランザクションとともに出力されるライトデータを、バス80を通じて取得するインターフェイスである。ライトデータバッファー74は、データ入力部75が取得した前記ライトデータを一時記憶するバッファーである。   The data input unit 75 is an interface for acquiring write data output together with the access request transaction including the write access request from the master through the bus 80. The write data buffer 74 is a buffer that temporarily stores the write data acquired by the data input unit 75.

SDRAM9は、前記ライトアクセスコマンドを受けた際に指定された前記データ記憶領域の前記アドレスに前記ライトデータを記録する。SDRAM9に記録された前記ライトデータは、ライトデータバッファー74から消去される。   The SDRAM 9 records the write data at the address of the data storage area designated when the write access command is received. The write data recorded in the SDRAM 9 is erased from the write data buffer 74.

[アクセスコマンド発行順序の具体例]
続いて、図3,4を参照しつつ、前記アクセス要求トランザクションにおける各アクセス要求に対応するコマンドの発行順序の具体例について説明する。図3は、前記アクセス要求トランザクションにおける前記アクセス要求に対応するコマンドの実行状況の一例を模式的に示すタイムチャートである。
[Specific example of access command issue order]
Next, a specific example of a command issue order corresponding to each access request in the access request transaction will be described with reference to FIGS. FIG. 3 is a time chart schematically showing an example of the execution status of the command corresponding to the access request in the access request transaction.

図3に示される第1タイムチャートTc1は、前記アクセス要求トランザクションの各アクセス要求に対応するコマンドが元の順序のまま発行された場合におけるコマンド実行状況の一例を模式的に示すタイムチャートである。第2タイムチャートTc2は、前記要求トランザクションを受けたメモリーアクセス装置10が前記アクセスコマンドを発行した場合におけるコマンド実行状況の一例を模式的に示すタイムチャートである。   A first time chart Tc1 shown in FIG. 3 is a time chart schematically showing an example of a command execution situation when commands corresponding to each access request of the access request transaction are issued in the original order. The second time chart Tc2 is a time chart schematically showing an example of a command execution situation when the memory access device 10 that has received the request transaction issues the access command.

第1タイムチャートTc1および第2タイムチャートTc2各々の元になる前記アクセス要求トランザクションは同じである。以下の説明において、そのアクセス要求トランザクションのことをサンプル要求トランザクションと称する。   The access request transaction that is the basis of each of the first time chart Tc1 and the second time chart Tc2 is the same. In the following description, the access request transaction is referred to as a sample request transaction.

図3において、R1〜R6は前記リードアクセス要求を表し、WI〜W3は前記ライトアクセス要求を表し、X1〜X8は前記オーバーヘッドを表す。   In FIG. 3, R1 to R6 represent the read access request, WI to W3 represent the write access request, and X1 to X8 represent the overhead.

第1タイムチャートTc1において、第1リードアクセス要求R1および第2リードアクセス要求R2は、それぞれ同一の前記バンクにおける異なる前記ページへの前記アクセス要求である。そのため、第1リードアクセス要求R1および第2リードアクセス要求R2の各コマンドが連続して発行されることにより、前記バンク競合オーバーヘッドである第1オーバーヘッドX1が生じている。第4リードアクセス要求R4のコマンドと第5リードアクセス要求R5のコマンドとの間においても生じている第4オーバーヘッドX4も前記バンク競合オーバーヘッドである。   In the first time chart Tc1, the first read access request R1 and the second read access request R2 are access requests to different pages in the same bank. Therefore, the first overhead X1, which is the bank contention overhead, is generated by sequentially issuing the commands of the first read access request R1 and the second read access request R2. The fourth overhead X4 occurring between the command of the fourth read access request R4 and the command of the fifth read access request R5 is also the bank contention overhead.

第1タイムチャートTc1において、第2リードアクセス要求R2および第3リードアクセス要求R3は、それぞれ異なる前記バンクへの前記アクセス要求である。そのため、第2リードアクセス要求R2および第3リードアクセス要求R3の各コマンドが連続して発行されることにより、大きなオーバーヘッドが生じず、連続して高速なアクセスが可能となる。   In the first time chart Tc1, the second read access request R2 and the third read access request R3 are the access requests to the different banks. For this reason, the commands of the second read access request R2 and the third read access request R3 are issued in succession, so that a large overhead does not occur and continuous high speed access is possible.

第1タイムチャートTc1において、種類が異なる第3リードアクセス要求R3および第1ライトアクセス要求W1の各コマンドが連続して発行されている。そのため、前記アクセス切替オーバーヘッドである第2オーバーヘッドX2が生じる。   In the first time chart Tc1, the different commands of the third read access request R3 and the first write access request W1 are successively issued. Therefore, the second overhead X2 that is the access switching overhead occurs.

第1ライトアクセス要求W1のコマンドと第4リードアクセス要求R4のコマンドとの間と、第5リードアクセス要求R5、第2ライトアクセス要求W2、第6リードアクセス要求R6および第3ライトアクセス要求W3の各々のコマンドの間と、第3ライトアクセス要求W3のコマンドの実行後とにおいて生じている第2オーバーヘッドX2、第3オーバーヘッドX3、第5オーバーヘッドX5、第6オーバーヘッドX6および第7オーバーヘッドX7および第8オーバーヘッドも、前記アクセス切替オーバーヘッドである。   Between the command of the first write access request W1 and the command of the fourth read access request R4, the fifth read access request R5, the second write access request W2, the sixth read access request R6, and the third write access request W3. The second overhead X2, the third overhead X3, the fifth overhead X5, the sixth overhead X6, the seventh overhead X7, and the eighth generated between the respective commands and after the execution of the command of the third write access request W3. The overhead is also the access switching overhead.

一方、メモリーアクセス装置10は、前記マスターから入力される前記サンプル要求トランザクションに含まれる複数の前記アクセス要求のキューを、前記オーバーヘッドが減少するように並べ替え、並べ替え後の順序で前記アクセス要求各々に対応するコマンドをSDRAM9へ発行する。   On the other hand, the memory access device 10 rearranges the plurality of access request queues included in the sample request transaction input from the master so as to reduce the overhead, and each of the access requests in the order after the rearrangement. A command corresponding to is issued to the SDRAM 9.

図4は、前記サンプル要求トランザクションを受けたメモリーアクセス装置10が一時記憶する前記リードアクセスキューRqおよびライトアクセスキューWqの一例を模式的に示す図である。   FIG. 4 is a diagram schematically illustrating an example of the read access queue Rq and the write access queue Wq that are temporarily stored in the memory access device 10 that has received the sample request transaction.

メモリーアクセス装置10において、アクセス要求分別部2は、前記サンプル要求トランザクションを、リードアクセス要求R1〜R6が並ぶ前記リードアクセスキューRqと、前記ライトアクセス要求W1〜W3が並ぶ前記ライトアクセスキューWqとに分別する。   In the memory access device 10, the access request sorting unit 2 divides the sample request transaction into the read access queue Rq in which the read access requests R1 to R6 are arranged and the write access queue Wq in which the write access requests W1 to W3 are arranged. Sort.

また、図4は、リードキュー区分部51が前記リードアクセスキューRqを複数の前記単位リードキューRu1〜Ru5に区分し、ライトキュー区分部52が前記ライトアクセスキューWqを複数の前記単位ライトキューWu1〜Wu3に区分した例を示す。   In FIG. 4, the read queue sorting unit 51 divides the read access queue Rq into a plurality of unit read queues Ru1 to Ru5, and the write queue sorting unit 52 divides the write access queue Wq into the plurality of unit write queues Wu1. The example divided into ~ Wu3 is shown.

便宜上、図4が示す例は、前記リードアクセスキューRqが、SDRAM9における同一の前記バンク内の異なる前記ページをアクセス先とする連続する2つの前記リードアクセス要求の間の全てが区分位置である場合の例である。   For convenience, FIG. 4 shows an example in which the read access queue Rq is all divided between two consecutive read access requests to which different pages in the same bank in the SDRAM 9 are accessed. It is an example.

同様に、図4が示す例は、前記ライトアクセスキューWqが、SDRAM9における同一の前記バンク内の異なる前記ページをアクセス先とする連続する2つの前記ライトアクセス要求の間の全てが区分位置である場合の例である。   Similarly, in the example shown in FIG. 4, the write access queue Wq is all divided between two consecutive write access requests to which different pages in the same bank in the SDRAM 9 are accessed. This is an example.

そして、図3の第2タイムチャートTc2が示すように、コマンド発行部6が、前記単位リードキューRu1〜Ru6に対応するコマンドと前記単位ライトキューWu1〜Wu3に対応するコマンドとを交互に発行する。その際、前記単位リードキューRu1〜Ru6に対応するコマンドの発行順序は、前記サンプル要求トランザクション内での前記リードアクセス要求R1〜R6の順序に従った順序である。   As shown in the second time chart Tc2 of FIG. 3, the command issuing unit 6 alternately issues commands corresponding to the unit read queues Ru1 to Ru6 and commands corresponding to the unit write queues Wu1 to Wu3. . At this time, the command issuance order corresponding to the unit read queues Ru1 to Ru6 is in accordance with the order of the read access requests R1 to R6 in the sample request transaction.

なお、便宜上、図3の第2タイムチャートTc2が示す例では、前記単位ライトキューWu1〜Wu3に対応するコマンドの発行順序も、前記サンプル要求トランザクション内での前記ライトアクセス要求W1〜W3の順序に従った順序になっている。   For convenience, in the example shown by the second time chart Tc2 in FIG. 3, the command issue order corresponding to the unit write queues Wu1 to Wu3 is also in the order of the write access requests W1 to W3 in the sample request transaction. It is in order.

前記サンプル要求トランザクションが処理される場合、前記アクセス切替オーバーヘッド(X2,X3,X5,X6,X7,X8)は必ず生じるオーバーヘッドである。   When the sample request transaction is processed, the access switching overhead (X2, X3, X5, X6, X7, X8) is necessarily generated overhead.

そして、メモリーアクセス装置10においては、前記リードアクセスキューRqが、前記バンク競合オーバーヘッド(X1,X4)が生じる前記アクセス要求の間の位置で前記単位リードキューRu1〜Ru6に区分される。   In the memory access device 10, the read access queue Rq is divided into the unit read queues Ru1 to Ru6 at positions between the access requests where the bank contention overhead (X1, X4) occurs.

さらに、メモリーアクセス装置10においては、前記単位リードキューRu1〜Ru6と前記単位ライトキューWu1〜Wu3とが交互に発行される。そのため、前記バンク競合オーバーヘッド(X1,X4)が、前記アクセス切替オーバーヘッド(X2,X3,X5,X6,X7,X8)の一部と重なる。   Further, in the memory access device 10, the unit read queues Ru1 to Ru6 and the unit write queues Wu1 to Wu3 are issued alternately. Therefore, the bank conflict overhead (X1, X4) overlaps with a part of the access switching overhead (X2, X3, X5, X6, X7, X8).

図3の第2タイムチャートTc2が示す例では、第1オーバーヘッドX1が第2オーバーヘッドX2と重なり、第4オーバーヘッドX4が第7オーバーヘッドX7と重なっている。そのため、前記バンク競合オーバーヘッドにおける前記アクセス切替オーバーヘッドと重なる部分が隠蔽される。その結果、SDRAM9へのアクセス効率が向上する。   In the example shown by the second time chart Tc2 of FIG. 3, the first overhead X1 overlaps with the second overhead X2, and the fourth overhead X4 overlaps with the seventh overhead X7. Therefore, a portion of the bank conflict overhead that overlaps with the access switching overhead is hidden. As a result, the access efficiency to the SDRAM 9 is improved.

ここで、第1リードアクセス要求R1に対応するコマンドが前記直近リードアクセスコマンドである場合に、コマンド発行部6の単位ライトキュー選択部62が次の前記単位ライトキューを選択する状況の例について説明する。この状況において、単位ライトキュー選択部62が、前記キャッシュコヒーレンシの維持を制約条件として、前述したようにオーバーヘッド時間の比較に基づく前記選択ルールに従って前記単位ライトキュー(Wu1)を選択することが考えられる。   Here, an example of a situation where the unit write queue selection unit 62 of the command issuing unit 6 selects the next unit write queue when the command corresponding to the first read access request R1 is the latest read access command will be described. To do. In this situation, it is conceivable that the unit write queue selection unit 62 selects the unit write queue (Wu1) according to the selection rule based on the overhead time comparison as described above, with the maintenance of the cache coherency as a constraint. .

前記選択ルールに従って前記単位ライトキュー(Wu1)が選択されれば、前記アクセス切替オーバーヘッド(X2)と重なる時間が最も長い前記バンク競合オーバーヘッド(X1)が選択される。その結果、前記バンク競合オーバーヘッドの隠蔽時間がより長くなり、SDRAM9へのアクセス効率がより向上する。   If the unit write queue (Wu1) is selected according to the selection rule, the bank contention overhead (X1) having the longest overlap time with the access switching overhead (X2) is selected. As a result, the concealing time of the bank conflict overhead becomes longer, and the access efficiency to the SDRAM 9 is further improved.

また、前記アクセス要求トランザクション内の前記リードアクセス要求各々に対応する前記リードアクセスコマンドは、メモリーアクセス装置10に入力される順序に従った順序で、即ち、前後関係が変更されることなく発行される。この場合、本来の順序の前記リードデータの列が、リードデータバッファー72に記録される。   Further, the read access command corresponding to each of the read access requests in the access request transaction is issued in an order according to the order inputted to the memory access device 10, that is, without changing the context. . In this case, the read data sequence in the original order is recorded in the read data buffer 72.

従って、メモリーアクセス装置10が採用されれば、SDRAM9に対するリードアクセスの要求順序と前記リードデータの出力順序との整合性が求められる場合でも、前記リードデータの並べ替えは不要である。その結果、前記リードデータの並べ替えのためにリードデータバッファー72などのリソースを追加する必要がない。さらに、前記リードデータの並べ替えに伴う前記レイテンシの増大が生じることもない。   Therefore, if the memory access device 10 is adopted, the read data need not be rearranged even when the consistency between the read access request order for the SDRAM 9 and the read data output order is required. As a result, it is not necessary to add resources such as the read data buffer 72 for rearranging the read data. Further, the latency is not increased due to the rearrangement of the read data.

また、前記単位リードキューおよび前記単位ライトキューが、前記バンク競合オーバーヘッドが予め定められた許容範囲に収まる1つ以上の前記アクセス要求ごとに区分されれば、前記アクセス切替オーバーヘッドの発生回数を抑制することができる。   Further, if the unit read queue and the unit write queue are classified for each of the one or more access requests in which the bank contention overhead falls within a predetermined allowable range, the number of times of occurrence of the access switching overhead is suppressed. be able to.

[第2実施形態]
次に、図5を参照しつつ、本発明の第2実施形態に係るメモリーアクセス装置10Aについて説明する。図5はメモリーアクセス装置10Aの概略構成を示すブロック図である。図5において、図1〜4に示される構成要素と同じ構成要素は、同じ参照符号が付されている。
[Second Embodiment]
Next, a memory access device 10A according to a second embodiment of the present invention will be described with reference to FIG. FIG. 5 is a block diagram showing a schematic configuration of the memory access device 10A. In FIG. 5, the same components as those shown in FIGS. 1 to 4 are given the same reference numerals.

メモリーアクセス装置10Aは、図2が示すメモリーアクセス装置10と比較して、一部の構成要素が追加された構成を有している。以下、メモリーアクセス装置10Aにおけるメモリーアクセス装置10と異なる点について説明する。   The memory access device 10A has a configuration in which some components are added as compared to the memory access device 10 shown in FIG. Hereinafter, differences of the memory access device 10A from the memory access device 10 will be described.

メモリーアクセス装置10Aは、メモリーアクセス装置10の構成に優先度判定部8が追加された構成を備える。さらに、メモリーアクセス装置10Aは、複数の第1キューイングバッファー3および複数の第2キューイングバッファー4を備える。図5が示す例では、アクセス要求分別部2が優先度判定部8を含む。   The memory access device 10 </ b> A has a configuration in which a priority determination unit 8 is added to the configuration of the memory access device 10. Further, the memory access device 10A includes a plurality of first queuing buffers 3 and a plurality of second queuing buffers 4. In the example shown in FIG. 5, the access request classification unit 2 includes a priority determination unit 8.

本実施形態において、要求トランザクション入力部1に入力される前記要求トランザクションは、優先度の情報を含む。前記優先度の情報は、例えば、前記マスターによって前記要求トランザクションに含められた情報である。また、優先度判定部8が、前記マスター各々と前記優先度との対応関係の情報を予め記憶していることも考えられる。この場合、前記優先度の情報は、前記要求トランザクションの要求元の前記マスターを識別する情報である。   In the present embodiment, the request transaction input to the request transaction input unit 1 includes priority information. The priority information is, for example, information included in the request transaction by the master. It is also conceivable that the priority determination unit 8 stores information on the correspondence between each of the masters and the priority in advance. In this case, the priority information is information for identifying the master that requested the request transaction.

また、第1キューイングバッファー3および第2キューイングバッファー4は、前記優先度の候補ごとに設けられている。例えば、前記優先度の候補が、第1優先度およびそれより優先度合の低い第2優先度の2種類である場合、メモリーアクセス装置10は、2つの第1キューイングバッファー3および2つの第2キューイングバッファー4を備える。図5が示す例は、第1キューイングバッファー3および第2キューイングバッファー4が2つずつ設けられた例である。   A first queuing buffer 3 and a second queuing buffer 4 are provided for each priority candidate. For example, when the priority candidates are two types, ie, the first priority and the second priority having a lower priority than the first priority, the memory access device 10 has two first queuing buffers 3 and two second priorities. A queuing buffer 4 is provided. The example shown in FIG. 5 is an example in which two first queuing buffers 3 and two second queuing buffers 4 are provided.

優先度判定部8は、入力される前記要求トランザクションに含まれる前記優先度の情報を参照することによって前記要求トランザクションごとの前記優先度を判定する。   The priority determination unit 8 determines the priority for each request transaction by referring to the priority information included in the input request transaction.

そして、アクセス要求分別部2は、優先度判定部8により判定される前記優先度が同じ前記アクセス要求トランザクションごとに前記リードアクセスキューと前記ライトアクセスキューとの分別を行う。   Then, the access request classification unit 2 classifies the read access queue and the write access queue for each access request transaction having the same priority determined by the priority determination unit 8.

また、第1キューイングバッファー3各々は、前記優先度が同じ前記アクセス要求トランザクションについて分別された前記リードアクセスキューのみを一時記憶する。同様に、第2キューイングバッファー4各々は、前記優先度が同じ前記アクセス要求トランザクションについて分別された前記ライトアクセスキューのみを一時記憶する。   Each of the first queuing buffers 3 temporarily stores only the read access queues sorted for the access request transactions having the same priority. Similarly, each of the second queuing buffers 4 temporarily stores only the write access queue sorted for the access request transactions having the same priority.

即ち、メモリーアクセス装置10Aは、前記優先度が同じ前記アクセス要求トランザクションごとに、前記リードアクセスキューを記憶する複数の前記第1キューイングバッファー3および前記ライトアクセスキューを記憶する複数の前記第2キューイングバッファー4を備える。   That is, the memory access device 10A has, for each access request transaction having the same priority, the plurality of first queuing buffers 3 that store the read access queue and the plurality of second queues that store the write access queue. Ing buffer 4 is provided.

メモリーアクセス装置10Aにおいて、リードキュー区分部51およびライトキュー区分部52は、前記優先度ごとに前記単位リードキューの区分および前記単位ライトキューの区分を行う。同様に、コマンド発行部6は、前記優先度の高いものから順に前記単位リードキューおよび前記単位ライトキューの選択およびコマンド発行の処理を行う。   In the memory access device 10A, the read queue sorting unit 51 and the write queue sorting unit 52 classify the unit read queue and the unit write queue for each priority. Similarly, the command issuing unit 6 selects and issues the unit read queue and the unit write queue in order from the highest priority.

メモリーアクセス装置10Aが採用されれば、前記要求トランザクションごとに前記リートアクセスコマンドの発行順序が本来の前後関係に維持されつつ、前記優先度の高い前記アクセス要求トランザクションから順に処理される。   If the memory access device 10A is employed, the issuance order of the read access command is maintained in the original context for each request transaction, and the access request transactions with the highest priority are processed in order.

従って、前記優先度の異なる前記要求トランザクションが混在して入力される場合でも、前記リソースの追加および前記レイテンシの増大を回避しつつ、前記要求トランザクションごとに前記リードアクセスの要求順序と前記リードデータの出力順序との整合性を確保することができる。   Therefore, even when the request transactions having different priorities are input in a mixed manner, the read access request order and the read data for each request transaction are avoided for each request transaction while avoiding the addition of the resource and the increase in the latency. Consistency with the output order can be ensured.

<応用例>
メモリーアクセス装置10,10Aが、例えば携帯情報端末などの画像処理装置100以外の情報処理装置に適用されることも考えられる。
<Application example>
It is also conceivable that the memory access devices 10 and 10A are applied to an information processing device other than the image processing device 100 such as a portable information terminal.

なお、本発明に係るメモリーアクセス装置は、各請求項に記載された発明の範囲において、以上に示された実施形態および応用例を自由に組み合わせること、或いは実施形態および応用例を適宜、変形するまたは一部を省略することによって構成されることも可能である。   The memory access device according to the present invention can be freely combined with the above-described embodiments and application examples within the scope of the invention described in each claim, or can be modified as appropriate. Alternatively, it may be configured by omitting a part.

1 :要求トランザクション入力部
2 :アクセス要求分別部
3 :第1キューイングバッファー
4 :第2キューイングバッファー
5 :アクセスキュー区分部
6 :コマンド発行部
7 :メモリーアクセス部
8 :優先度判定部
9 :SDRAM
10,10A:メモリーアクセス装置
20 :スキャン部
30 :スキャン制御部
40 :プリント部
50 :プリント制御部
51 :リードキュー区分部
52 :ライトキュー区分部
60 :通信制御部
61 :単位リードキュー選択部
62 :単位ライトキュー選択部
63 :コマンド交互発行部
70 :画像処理部
71 :コマンド発行調整部
72 :リードデータバッファー
73 :データ出力部
74 :ライトデータバッファー
75 :データ入力部
80 :バス
100 :画像処理装置
R1〜R6:リードアクセス要求
Rq :リードアクセスキュー
Ru1〜Ru6:単位リードキュー
Tc1 :第1タイムチャート
Tc2 :第2タイムチャート
W1〜W3:ライトアクセス要求
Wq :ライトアクセスキュー
Wu1〜Wu3:単位ライトキュー
X1〜X7:オーバーヘッド
1: Request transaction input unit 2: Access request sorting unit 3: First queuing buffer 4: Second queuing buffer 5: Access queue sorting unit 6: Command issuing unit 7: Memory access unit 8: Priority determining unit 9: SDRAM
10, 10A: Memory access device 20: Scan unit 30: Scan control unit 40: Print unit 50: Print control unit 51: Read queue classification unit 52: Write queue classification unit 60: Communication control unit 61: Unit read queue selection unit 62 : Unit write queue selection unit 63: Command alternate issue unit 70: Image processing unit 71: Command issue adjustment unit 72: Read data buffer 73: Data output unit 74: Write data buffer 75: Data input unit 80: Bus 100: Image processing Devices R1 to R6: Read access request Rq: Read access queue Ru1 to Ru6: Unit read queue Tc1: First time chart Tc2: Second time chart W1 to W3: Write access request Wq: Write access queue Wu1 to Wu3: Unit write Queues X1-X7: overhead

Claims (4)

複数のバンクに区分されているとともに前記バンク各々が複数のページに区分されたデータ記憶領域を有するメモリーに対してアクセスコマンドを発行するメモリーアクセス装置であって、
外部から入力される前記メモリーへのアクセス要求の列を含むアクセス要求トランザクションをリードアクセス要求が並ぶリードアクセスキューとライトアクセス要求が並ぶライトアクセスキューとに分別するアクセス要求分別部と、
前記リードアクセスキューを一時記憶する第1キューイングバッファーと、
前記ライトアクセスキューを一時記憶する第2キューイングバッファーと、
前記リードアクセスキューを、前記メモリーにおける同一の前記バンク内の異なる前記ページをアクセス先とする連続する2つの前記リードアクセス要求の間で区分することによってそれぞれ1つ以上の前記リードアクセス要求を含む複数の単位リードキューに区分するリードキュー区分部と、
前記ライトアクセスキューを、前記メモリーにおける同一の前記バンク内の異なる前記ページをアクセス先とする連続する2つの前記ライトアクセス要求の間で区分することによってそれぞれ1つ以上の前記ライトアクセス要求を含む複数の単位ライトキューに区分するライトキュー区分部と、
前記単位リードキュー各々を前記アクセス要求トランザクション内での前記リードアクセス要求の順序に従って順次選択するとともに、前記単位ライトキュー各々を順次選択し、少なくとも前記第1キューイングバッファー内の全ての前記単位リードキューに対応するコマンドまたは前記第2キューイングバッファー内の全ての前記単位ライトキューに対応するコマンドが発行されるまで、選択した前記単位リードキューに対応するコマンドと前記単位ライトキューに対応するコマンドとを交互に前記メモリーに発行するコマンド発行部と、を備えるメモリーアクセス装置。
A memory access device for issuing an access command to a memory having a data storage area divided into a plurality of banks and each of the banks being divided into a plurality of pages,
An access request sorting unit for sorting an access request transaction including a column of access requests to the memory input from the outside into a read access queue in which read access requests are arranged and a write access queue in which write access requests are arranged;
A first queuing buffer for temporarily storing the read access queue;
A second queuing buffer for temporarily storing the write access queue;
A plurality of read access requests each including one or more read access requests by partitioning the read access queue between two consecutive read access requests that are accessed by different pages in the same bank in the memory; A read queue sorting section that divides the unit read queue into
A plurality of write access requests each including one or more write access requests by partitioning the write access queue between two consecutive write access requests to which different pages in the same bank in the memory are accessed A light queue sorting section for sorting into unit light queues of
Each of the unit read queues is sequentially selected according to the order of the read access requests in the access request transaction, and each of the unit write queues is sequentially selected, and at least all the unit read queues in the first queuing buffer are selected. Or a command corresponding to the selected unit read queue and a command corresponding to the unit write queue until a command corresponding to the unit write queue or a command corresponding to all the unit write queues in the second queuing buffer is issued. A memory access device comprising: a command issuing unit that alternately issues to the memory.
前記コマンド発行部は、前記ライトアクセスキューから次に発行対象とする前記単位ライトキューを選択する際に、キャッシュコヒーレンシの維持を制約条件として、最後に発行した前記単位リードキューにおける最後の前記リードアクセス要求に対応するコマンドである直近リードアクセスコマンドとの間で生じるアクセスの種類の切り替わりによるオーバーヘッド時間が、前記直近リードアクセスコマンドと次の次に発行予定の前記単位リードキューにおける最初の前記リードアクセス要求に対応するコマンドとの間で生じるバンク競合によるオーバーヘッド時間に最も近いものを選択する、請求項1に記載のメモリーアクセス装置。   When the command issuing unit selects the unit write queue to be issued next from the write access queue, the last read access in the last issued unit read queue with the maintenance of cache coherency as a constraint condition The overhead time due to switching of the type of access that occurs between the latest read access command that is a command corresponding to the request is the first read access request in the unit read queue that is scheduled to be issued next. The memory access device according to claim 1, wherein a memory access device that is closest to an overhead time due to a bank contention occurring with a command corresponding to is selected. 前記リードキュー区分部は、対応するコマンドが前記メモリーに連続して発行された場合にバンク競合によるオーバーヘッドが予め定められた許容範囲に収まる前記リードアクセス要求の列ごとに、当該リードアクセス要求の列を前記単位リードキューとして区分し、
前記ライトキュー区分部は、対応するコマンドが前記メモリーに連続して発行された場合にバンク競合によるオーバーヘッドが予め定められた許容範囲に収まる前記ライトアクセス要求の列ごとに、当該ライトアクセス要求の列を前記単位ライトキューとして区分する、請求項1または請求項2に記載のメモリーアクセス装置。
The read queue sorting unit includes a column of the read access request for each column of the read access request in which the overhead due to bank competition falls within a predetermined allowable range when corresponding commands are continuously issued to the memory. As the unit read queue,
The write queue sorting unit includes a write access request column for each write access request column in which overhead due to bank competition falls within a predetermined allowable range when corresponding commands are continuously issued to the memory. The memory access device according to claim 1, wherein the memory access device is classified as the unit write queue.
前記アクセス要求トランザクションの優先度を判定する判定部をさらに備え、
前記アクセス要求分別部は、前記判定部により判定される前記優先度が同じ前記アクセス要求トランザクションごとに前記リードアクセスキューと前記ライトアクセスキューとの分別を行い、
前記優先度が同じ前記アクセス要求トランザクションごとに、前記リードアクセスキューを記憶する複数の前記第1キューイングバッファーおよび前記ライトアクセスキューを記憶する複数の前記第2キューイングバッファーを備え、
前記リードキュー区分部および前記ライトキュー区分部は、前記優先度ごとに前記単位リードキューの区分および前記単位ライトキューの区分を行い、
前記コマンド発行部は、前記優先度の高いものから順に前記単位リードキューおよび前記単位ライトキューの選択およびコマンド発行の処理を行う、請求項1から請求項3のいずれか1項に記載のメモリーアクセス装置。
A determination unit for determining a priority of the access request transaction;
The access request classification unit classifies the read access queue and the write access queue for each access request transaction having the same priority determined by the determination unit,
A plurality of first queuing buffers for storing the read access queue and a plurality of second queuing buffers for storing the write access queue for each access request transaction having the same priority;
The read queue sorting unit and the write queue sorting unit perform the unit read queue sorting and the unit write queue sorting for each priority,
4. The memory access according to claim 1, wherein the command issuing unit selects the unit read queue and the unit write queue and issues a command in order from the highest priority. 5. apparatus.
JP2014219479A 2014-10-28 2014-10-28 Memory access device Active JP6180398B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014219479A JP6180398B2 (en) 2014-10-28 2014-10-28 Memory access device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014219479A JP6180398B2 (en) 2014-10-28 2014-10-28 Memory access device

Publications (2)

Publication Number Publication Date
JP2016085684A JP2016085684A (en) 2016-05-19
JP6180398B2 true JP6180398B2 (en) 2017-08-16

Family

ID=55973074

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014219479A Active JP6180398B2 (en) 2014-10-28 2014-10-28 Memory access device

Country Status (1)

Country Link
JP (1) JP6180398B2 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10198369B2 (en) * 2017-03-24 2019-02-05 Advanced Micro Devices, Inc. Dynamic memory remapping to reduce row-buffer conflicts
CN109426520A (en) * 2017-09-04 2019-03-05 深圳市中兴微电子技术有限公司 A kind of method and device for realizing consistency checking
JP2020170315A (en) * 2019-04-02 2020-10-15 キヤノン株式会社 Access control device
CN113377277B (en) * 2020-03-09 2024-08-16 伊姆西Ip控股有限责任公司 Method, apparatus and computer program product for managing memory

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006154910A (en) * 2004-11-25 2006-06-15 Canon Inc Memory control device
JP4786209B2 (en) * 2005-03-18 2011-10-05 パナソニック株式会社 Memory access device
JP2009193107A (en) * 2008-02-12 2009-08-27 Panasonic Corp Memory access device
JP5754273B2 (en) * 2011-07-11 2015-07-29 株式会社リコー MEMORY CONTROL DEVICE, INFORMATION PROCESSING DEVICE, AND MEMORY CONTROL METHOD

Also Published As

Publication number Publication date
JP2016085684A (en) 2016-05-19

Similar Documents

Publication Publication Date Title
JP4356765B2 (en) Information processing apparatus and method, and program
US8661209B2 (en) Data processing apparatus, data processing method, and computer-readable recording medium for writing and reading data to and from a storage
US10409746B2 (en) Memory access control device and control method of memory access
JP6180398B2 (en) Memory access device
JP5911548B1 (en) Apparatus, method, and computer program for scheduling access request to shared memory
JP6233287B2 (en) Memory access device, image processing device
US8928927B2 (en) Image forming apparatus that buffers data in a storage device and reduces delays in process
JP2016103112A (en) Data transfer control device, information processing device, and image forming apparatus
JP2015158894A (en) Image forming apparatus, data transfer control method for image forming processing, and data transfer control program for image forming processing
JP5340058B2 (en) Image processing apparatus, control method thereof, and program
US9667531B2 (en) Image processing apparatus and control method
US9858204B2 (en) Cache device, cache system, and cache method
JP4754531B2 (en) Device access control method and processing apparatus
JP2007094649A (en) Access arbitration circuit
JP2012038065A (en) Semiconductor integrated circuit and information storage method
JP4446968B2 (en) Data processing device
JP6180397B2 (en) Memory access device and memory access control method
JP4804803B2 (en) Memory access control device and computer program
JP2000099391A (en) Printer, printer controlling method and storage medium
JP2003323335A (en) Memory device and control method thereof
JP2007264751A (en) Data transfer control device
JP2000148576A (en) File management system
JP2006277363A (en) Information transfer system, and image forming device
JP2007281576A (en) Image processing device
JP5602109B2 (en) Image forming apparatus and image forming program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20161026

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170609

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170718

R150 Certificate of patent or registration of utility model

Ref document number: 6180398

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150