JP2008140078A - Bus bridge device, information processor, and data transfer control method - Google Patents

Bus bridge device, information processor, and data transfer control method Download PDF

Info

Publication number
JP2008140078A
JP2008140078A JP2006325020A JP2006325020A JP2008140078A JP 2008140078 A JP2008140078 A JP 2008140078A JP 2006325020 A JP2006325020 A JP 2006325020A JP 2006325020 A JP2006325020 A JP 2006325020A JP 2008140078 A JP2008140078 A JP 2008140078A
Authority
JP
Japan
Prior art keywords
processing module
memory
address
cache
bus
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.)
Pending
Application number
JP2006325020A
Other languages
Japanese (ja)
Inventor
Makoto Sato
真 佐藤
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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2006325020A priority Critical patent/JP2008140078A/en
Publication of JP2008140078A publication Critical patent/JP2008140078A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Bus Control (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To improve memory access efficiency while maintaining data coherency. <P>SOLUTION: A register 134 stores an upper limit address and a predetermined lower limit address. An address comparison part 135 compares an address designated by an access request with the upper limit address and lower limit address stored in the register 134. When the designated address is within the range of the lower limit address and the upper limit address, the address comparison part 135 validates a first path for accessing a shared memory 200 through a cache 121. When the designated address is below the lower limit address or beyond the upper limit address, the address comparison part 135 validates a second path for accessing the shared memory 200 without through the cache 121. <P>COPYRIGHT: (C)2008,JPO&INPIT

Description

本発明は一般に、バスブリッジ装置、情報処理装置、およびデータ転送制御方法に関し、特に、キャッシュを介してメモリと処理モジュールとの間のデータ転送を制御するバスブリッジ装置、情報処理装置、およびデータ転送制御方法に関する。   The present invention generally relates to a bus bridge device, an information processing device, and a data transfer control method, and more particularly to a bus bridge device, an information processing device, and a data transfer that control data transfer between a memory and a processing module via a cache. It relates to a control method.

従来、メモリアクセス効率を向上させるための様々な技術が提案されている。例えば、ダブルデータレート(DDR)タイプのSDRAMでは、アドレスを設定するためのオーバーヘッドが大きく、実際のデータ転送時間は短い。このため、シングルリード、シングルライトといったシングルアクセスが多発すると、メモリアクセス効率が低下される。そこで、通常は、プロセッサ、バスマスタデバイスといった処理モジュールとSDRAMとの間にキャッシュを配置するシステム構成が使用されている。SDRAMとキャッシュとの間のデータ転送はバースト転送によって実行されるため、メモリアクセス効率を向上させることができる。   Conventionally, various techniques for improving memory access efficiency have been proposed. For example, in a double data rate (DDR) type SDRAM, an overhead for setting an address is large, and an actual data transfer time is short. For this reason, if single access such as single read and single write occurs frequently, the memory access efficiency decreases. Therefore, a system configuration is generally used in which a cache is arranged between a processing module such as a processor and a bus master device and the SDRAM. Since the data transfer between the SDRAM and the cache is executed by burst transfer, the memory access efficiency can be improved.

また、複数のプロセッサが接続されるバスとメモリが接続されるバスとの間に、キャッシュを含むバスブリッジ回路が配置されたシステムも提案されている(例えば、特許文献1参照)。このバスブリッジ回路においては、キャッシュから取り出した内容をプロセッサに出力する処理経路とは別個に、キャッシュを経由せずに適当な固定値をプロセッサに出力する処理経路を形成し、余分なキャッシュ無効化処理の実行を省略している。
特開2000−47939号公報
There has also been proposed a system in which a bus bridge circuit including a cache is arranged between a bus to which a plurality of processors are connected and a bus to which a memory is connected (see, for example, Patent Document 1). In this bus bridge circuit, a processing path for outputting an appropriate fixed value to the processor without passing through the cache is formed separately from the processing path for outputting the contents fetched from the cache to the processor, and the cache is invalidated. Execution of processing is omitted.
JP 2000-47939 A

しかし、常にキャッシュを介してメモリをアクセスする処理モジュールを備えたシステムに、当該キャッシュを介さずにメモリをアクセスする新たな処理モジュールを追加した場合、データのコヒーレンシを保つことが困難となる場合がある。例えば、2つの異なる処理モジュールが1つのメモリを共有しており、一方のモジュールによってメモリにデータが書き込まれた後に、そのデータを他方のモジュールが読み出す制御が求められる場合を考える。このような場合、どちらかのモジュールがキャッシュに格納されたデータを用いていると、キャッシュと共有メモリとの間でデータ内容の不一致が生じる。   However, if a new processing module that accesses the memory without using the cache is added to a system that includes a processing module that always accesses the memory through the cache, it may be difficult to maintain data coherency. is there. For example, consider a case where two different processing modules share one memory, and after data is written to the memory by one module, control is required to read the data by the other module. In such a case, if one of the modules uses the data stored in the cache, a data content mismatch occurs between the cache and the shared memory.

そのため、例えば、キャッシュを介さずに共有メモリをアクセスする一方の処理モジュールが共有メモリにライトしたデータを、キャッシュを介して共有メモリをアクセスする他方の処理モジュールが使用する場合は、一方の処理モジュールが共有メモリにデータをライトした後、キャッシュの内容を無効化して、改めて他方の処理モジュールが共有メモリをリードアクセスするという手順が必要になる。また、逆に他方の処理モジュールがキャッシュにライトしたデータを一方の処理モジュールが使用する場合は、他方の処理モジュールがキュッシュにデータをライトした後、キャッシュをフラッシュし、無効化してから、一方の処理モジュールが共有メモリを読み出す手順が必要になる。   Therefore, for example, when the other processing module that accesses the shared memory via the cache uses the data written to the shared memory by one processing module that accesses the shared memory without going through the cache, the one processing module After the data is written to the shared memory, the contents of the cache are invalidated, and the other processing module needs to read-access the shared memory again. Conversely, when one processing module uses data written to the cache by the other processing module, the other processing module writes the data to the cache, flushes the cache, invalidates the data, A procedure for the processing module to read the shared memory is required.

ところで、近年、開発が大規模化し、開発期間が短縮化される中で、多くの開発には過去に開発したソフトウェアが再利用される。例えば、ハードウエアを動作させるドライバについては、実績のあるドライバをそのまま使いたいという要望が非常に多い。上述したキャッシュ制御手順はドライバに組み込むべき手順ではあるが、上述のとおりドライバは流用が多く、新規機能組み込みは非常に困難である。常にキャッシュを無効しておけばドライバの修正は不要となるが、メモリアクセス効率の大幅な低下を招くことになる。   By the way, in recent years, development has become large-scale and development period has been shortened, and software developed in the past is reused for many developments. For example, as for a driver that operates hardware, there is a great demand for using a proven driver as it is. Although the above-described cache control procedure is a procedure to be incorporated in the driver, as described above, the driver is often diverted, and it is very difficult to incorporate a new function. If the cache is always invalidated, the driver need not be corrected, but the memory access efficiency is greatly reduced.

そこで、本発明は、データコヒーレンシを保ちつつ、メモリアクセス効率を向上させることができるバスブリッジ装置、情報処理装置、およびデータ転送制御方法を提供することを目的とする。   Accordingly, an object of the present invention is to provide a bus bridge device, an information processing device, and a data transfer control method that can improve memory access efficiency while maintaining data coherency.

上記課題を解決するために、本発明の一つの面によれば、第1の処理モジュール及び第2の処理モジュールによって共有されるメモリに接続されたバスと前記第1の処理モジュールとの間に設けられたバスブリッジ装置であって、前記メモリから読み出されるデータを格納するキャッシュと、前記メモリに割り当てられたアドレス空間内の所定のアドレス領域を指定するアドレス情報を格納するレジスタと、前記第1の処理モジュールによって実行されるメモリアクセスサイクルによって指定されるメモリアドレスと前記アドレス情報とを比較し、前記メモリアドレスが前記所定のアドレス領域に属する場合、前記第1の処理モジュールが前記キャッシュを介して前記メモリをアクセスする第1の経路を有効にし、前記メモリアドレスが前記所定のアドレス領域に属さない場合、前記第1の処理モジュールが前記キャッシュを介さずに前記メモリをアクセスする第2の経路を有効にする経路切り替え部とを具備することを特徴とするバスブリッジ装置が提供される。   In order to solve the above-described problem, according to one aspect of the present invention, a bus connected to a memory shared by a first processing module and a second processing module is between the first processing module and the bus. A bus bridge device provided; a cache for storing data read from the memory; a register for storing address information for designating a predetermined address area in an address space allocated to the memory; and the first The memory address specified by the memory access cycle executed by the processing module is compared with the address information. When the memory address belongs to the predetermined address area, the first processing module passes through the cache. Enable a first path to access the memory, and the memory address is A bus bridge device, comprising: a path switching unit that enables a second path for accessing the memory without passing through the cache when the first processing module does not belong to a predetermined address area Is provided.

また、本発明の別の面によれば、第1の処理モジュールと、第2の処理モジュールと、
前記第1の処理モジュールおよび前記第2の処理モジュールによって共有されるメモリと、前記メモリに接続されたバスと前記第1の処理モジュールとの間に設けられ、前記メモリから読み出されるデータを格納するキャッシュと、前記メモリに割り当てられたアドレス空間内の所定のアドレス領域を指定するアドレス情報を格納するレジスタと、前記第1の処理モジュールによって実行されるメモリアクセスサイクルによって指定されるメモリアドレスと前記アドレス情報とを比較し、前記メモリアドレスが前記所定のアドレス領域に属する場合、前記第1の処理モジュールが前記キャッシュを介して前記メモリをアクセスする第1の経路を有効にし、前記メモリアドレスが前記所定のアドレス領域に属さない場合、前記第1の処理モジュールが前記キャッシュを介さずに前記メモリをアクセスする第2の経路を有効にする経路切り替え部とを具備することを特徴とする情報処理装置が提供される。
According to another aspect of the present invention, a first processing module, a second processing module,
A memory shared by the first processing module and the second processing module, a bus connected to the memory, and the first processing module are provided to store data read from the memory A cache, a register for storing address information for designating a predetermined address area in an address space allocated to the memory, a memory address and the address designated by a memory access cycle executed by the first processing module When the memory address belongs to the predetermined address area, the first processing module enables a first path for accessing the memory via the cache, and the memory address is The first processing module does not belong to the address area of the first processing module. The information processing apparatus is provided which Le is characterized by comprising a path switching unit to enable the second point of access to the memory without the cache.

さらに、本発明のまた別の面によれば、第1の処理モジュール及び第2の処理モジュールによって共有されるメモリに接続されたバスと前記第1の処理モジュールとの間に設けられたキャッシュを用いて、前記第1の処理モジュールと前記メモリとの間のデータ転送を制御するデータ転送制御方法であって、前記第1の処理モジュールによって実行されるシングルアクセスによって指定されるメモリアドレスが前記メモリに割り当てられたアドレス空間内の所定のアドレス領域に属するか否かを判定するステップと、前記メモリアドレスが前記所定のアドレス領域に属する場合、前記第1の処理モジュールが前記キャッシュを介して前記メモリをアクセスする第1の経路を有効にするステップと、前記メモリアドレスが前記所定のアドレス領域に属さない場合、前記第1の処理モジュールが前記キャッシュを介さずに前記メモリをアクセスする第2の経路を有効にするステップとを具備することを特徴とする、データ転送制御方法が提供される。   Further, according to still another aspect of the present invention, a cache provided between the bus connected to the memory shared by the first processing module and the second processing module and the first processing module is provided. A data transfer control method for controlling data transfer between the first processing module and the memory, wherein a memory address designated by a single access executed by the first processing module is the memory Determining whether or not the memory address belongs to the predetermined address area, and when the memory address belongs to the predetermined address area, the first processing module passes the cache through the cache. Enabling a first path to access the memory address and the memory address is the predetermined address area. If not, the first processing module comprises a step of enabling a second path for accessing the memory without going through the cache, and a data transfer control method is provided. .

本発明によれば、データコヒーレンシを保ちつつ、メモリアクセス効率を向上させることができるバスブリッジ装置、情報処理装置、およびデータ転送制御方法を提供することができる。   According to the present invention, it is possible to provide a bus bridge device, an information processing device, and a data transfer control method capable of improving memory access efficiency while maintaining data coherency.

以下、本発明の実施形態について図面を参照しながら説明する。   Hereinafter, embodiments of the present invention will be described with reference to the drawings.

図1を参照しつつ、本発明の一実施形態に係るデータ転送制御装置について説明する。   A data transfer control apparatus according to an embodiment of the present invention will be described with reference to FIG.

図1は、本発明の一実施形態に係る情報処理装置の構成を概略的に示すブロック図である。この情報処理装置は、複数の処理モジュールと、これら複数の処理モジュールによって共有される共有メモリ200とを備えている。複数の処理モジュールは、例えば、LSI(Large Scale Integration)100として実現されている。LSI100は、内部バス110、バスブリッジ120、処理モジュール130、処理モジュール140、処理モジュール150等を備える。本実施形態に係る情報処理装置は、例えば、ノート型パーソナルコンピュータ、デスクトップ型パーソナルコンピュータ、ゲーム機器、テレビといった、様々な電子機器に搭載される組み込みシステムとして用いることができる。   FIG. 1 is a block diagram schematically showing the configuration of an information processing apparatus according to an embodiment of the present invention. The information processing apparatus includes a plurality of processing modules and a shared memory 200 shared by the plurality of processing modules. The plurality of processing modules are realized as an LSI (Large Scale Integration) 100, for example. The LSI 100 includes an internal bus 110, a bus bridge 120, a processing module 130, a processing module 140, a processing module 150, and the like. The information processing apparatus according to the present embodiment can be used as an embedded system mounted on various electronic devices such as a notebook personal computer, a desktop personal computer, a game device, and a television.

内部バス110は、処理モジュール130、140及び150の各々と共有メモリ200との間でのデータ転送に用いられる。処理モジュール130、140及び150の各々は、所定の機能を実行するためのデバイスであり、例えば、プロセッサ、バスマスタ機能を有するI/Oコントローラ、またはそれらプロセッサとI/Oコントローラとの組み合わせによって実現されている。 バスブリッジ120は、内部バス110と処理モジュール130との間に設けられている。バスブリッジ120は、キャッシュ回路121、及び経路セレクタ122を備える。キャッシュ回路121は、共有メモリ200から読み出されるデータを格納するキャッシュである。キャッシュリフィル、キャッシュフラッシュ等のためにキャッシュ回路121と共有メモリ200との間で実行されるデータ転送は、バースト転送を用いて実行される。1回のバースト転送によって転送されるデータサイズは、例えばキャッシュラインのデータサイズに対応している。また、バスブリッジ120は、プロトコル変換を行う機能を有する。   The internal bus 110 is used for data transfer between each of the processing modules 130, 140 and 150 and the shared memory 200. Each of the processing modules 130, 140, and 150 is a device for executing a predetermined function, and is realized by, for example, a processor, an I / O controller having a bus master function, or a combination of the processor and the I / O controller. ing. The bus bridge 120 is provided between the internal bus 110 and the processing module 130. The bus bridge 120 includes a cache circuit 121 and a path selector 122. The cache circuit 121 is a cache that stores data read from the shared memory 200. Data transfer executed between the cache circuit 121 and the shared memory 200 for cache refill, cache flush, etc. is executed using burst transfer. The data size transferred by one burst transfer corresponds to the data size of the cache line, for example. The bus bridge 120 has a function of performing protocol conversion.

処理モジュール130は、サブモジュール131及び132、バスインタフェース(BIF)133、CPU135等を備え、これらの要素の各々はモジュール内部バス136を介して互いに接続されている。バスインタフェース133は、レジスタ134を備えている。処理モジュール130は、バスブリッジ120及び内部バス110を介して共有メモリ200にアクセスする。処理モジュール130のモジュール内部バス130のプロトコルと、内部バス110のプロトコルとが異なる場合、バスブリッジ120によってプロトコル変換が行われる。   The processing module 130 includes submodules 131 and 132, a bus interface (BIF) 133, a CPU 135, and the like, and each of these elements is connected to each other via a module internal bus 136. The bus interface 133 includes a register 134. The processing module 130 accesses the shared memory 200 via the bus bridge 120 and the internal bus 110. When the protocol of the module internal bus 130 of the processing module 130 and the protocol of the internal bus 110 are different, protocol conversion is performed by the bus bridge 120.

処理モジュール140及び処理モジュール150のそれぞれは、内部バス110に接続されており、内部バス110を介して共有メモリ200にアクセスする。   Each of the processing module 140 and the processing module 150 is connected to the internal bus 110 and accesses the shared memory 200 via the internal bus 110.

処理モジュール130と内部バス110との間には、2種類の経路がある。1つは、処理モジュール130から、バスブリッジ120のキャッシュ回路121を経由して共有メモリ200にアクセスする第1の経路である。もう1つは、処理モジュール130から、バスブリッジ120のキャッシュ回路121を経由せずに共有メモリ200にアクセスする第2の経路である。   There are two types of paths between the processing module 130 and the internal bus 110. One is a first path for accessing the shared memory 200 from the processing module 130 via the cache circuit 121 of the bus bridge 120. The other is a second path for accessing the shared memory 200 from the processing module 130 without going through the cache circuit 121 of the bus bridge 120.

第1の経路では、処理モジュール130によって実行されるメモリアクセスサイクルはキャッシュ回路121によって受け付けられる。モジュール130内のサブモジュール131、サブモジュール132、及びCPU135の間でデータのやり取りをする場合、共有メモリ200にアクセスせずに、キャッシュ回路121に格納されたデータを用いることができる。このため、第1の経路を用いれば、共有メモリ200へのメモリアクセス効率を向上させることができる。例えば、モジュール130が画像処理の機能を有するモジュールである場合、モジュール130から共有メモリ200へのシングルアクセスが多数発生することが予想される。このような場合、第1の経路(キャッシュ回路121)を用いれば、共有メモリ200へのアクセス回数を削減し、メモリアクセス効率を向上させることができる。   In the first path, the memory access cycle executed by the processing module 130 is accepted by the cache circuit 121. When data is exchanged among the submodule 131, the submodule 132, and the CPU 135 in the module 130, the data stored in the cache circuit 121 can be used without accessing the shared memory 200. For this reason, if the first path is used, the memory access efficiency to the shared memory 200 can be improved. For example, when the module 130 is a module having an image processing function, a large number of single accesses from the module 130 to the shared memory 200 are expected to occur. In such a case, if the first path (cache circuit 121) is used, the number of accesses to the shared memory 200 can be reduced and the memory access efficiency can be improved.

第2の経路は、処理モジュール130と他のモジュール(処理モジュール140、処理モジュール150)との間でデータのコヒーレンシを保つ必要がある場合に用いられる。例えば、処理モジュール130のサブモジュール131が、処理モジュール140が書き込んだ後のデータを読み出す必要がある場合、サブモジュール131がキャッシュ回路121に格納されているデータを読み出してしまうと、実際に処理モジュール140が書き込んだデータとは異なるデータを読み出すことになり、データのコヒーレンシを保てなくなる。従って、処理モジュール130と他のモジュール(処理モジュール140、処理モジュール150)との間でデータをやり取りする場合、第2の経路が用いられる。従って、データのコヒーレンシを保つことができる。   The second path is used when it is necessary to maintain data coherency between the processing module 130 and other modules (processing module 140, processing module 150). For example, when the submodule 131 of the processing module 130 needs to read data after the processing module 140 has written, if the submodule 131 reads the data stored in the cache circuit 121, the processing module actually Data different from the data written by 140 is read, and data coherency cannot be maintained. Therefore, when data is exchanged between the processing module 130 and other modules (processing module 140, processing module 150), the second path is used. Therefore, data coherency can be maintained.

第1の経路と第2の経路のどちらを用いるかは、モジュール130内のバスインタフェース133によって決定される。また、経路の切り替えは、経路セレクタ122によって実行される。   Whether to use the first route or the second route is determined by the bus interface 133 in the module 130. The path switching is executed by the path selector 122.

図2及び図3を参照しつつ、バスインタフェース133とバスブリッジ120について、より詳細に説明する。   The bus interface 133 and the bus bridge 120 will be described in more detail with reference to FIGS.

図2は、バスブリッジ120の構成と、処理モジュール130のバスインタフェース133の構成をより詳細に示すブロック図である。なお、図2において、モジュール内部バス136は、複数の信号線として示されている。より具体的には、モジュール内部バス136は、ライトデータ信号線(WrData)、アドレス信号線(Address)、制御信号線(Ctrl)、バススタート信号線(BusStart)、リードデータ信号線(RdData)、及び肯定応答信号線(Ack)を含むものとして示されている。なお、バススタート信号は本来、制御系信号の一つであるが、図2においては説明の都合上、制御信号とは別に示されている。また、図2に示される内部モジュールバス136の構成は一例であり、この構成に限定されるものではない。   FIG. 2 is a block diagram showing the configuration of the bus bridge 120 and the configuration of the bus interface 133 of the processing module 130 in more detail. In FIG. 2, the module internal bus 136 is shown as a plurality of signal lines. More specifically, the module internal bus 136 includes a write data signal line (WrData), an address signal line (Address), a control signal line (Ctrl), a bus start signal line (BusStart), a read data signal line (RdData), And an acknowledgment signal line (Ack). The bus start signal is originally one of the control system signals, but is shown separately from the control signal in FIG. 2 for convenience of explanation. The configuration of the internal module bus 136 shown in FIG. 2 is an example, and the configuration is not limited to this configuration.

図2に示されるように、バスブリッジ120は、キャッシュ回路121、第1のマスク回路122a、第2のマスク回路122b、及びプロトコル変換回路123等を備える。第1のマスク回路122a、及び第2のマスク回路122bは、前述の経路セレクタ122を構成する。   As shown in FIG. 2, the bus bridge 120 includes a cache circuit 121, a first mask circuit 122a, a second mask circuit 122b, a protocol conversion circuit 123, and the like. The first mask circuit 122a and the second mask circuit 122b constitute the path selector 122 described above.

第1のマスク回路122aは、キャッシュ回路121と処理モジュール130との間に設けられている。具体的には、第1のマスク回路122aは、キャッシュ回路121と処理モジュール130との間を接続するバススタート信号線(BusStart)、リードデータ信号線(RdData)、及び肯定応答信号線(Ack)内に挿入されている。処理モジュール130からのメモリアクセス要求に対しては、キャッシュ回路121及びプロトコル変換回路123はバススタート信号線(BusStart)に応答して動作する。したがって、全ての信号線をマスクせずとも、処理モジュール130からキャッシュ回路121へのバススタート信号線(BusStart)等をマスクするだけで、処理モジュール130からのメモリアクセスサイクルをキャッシュ回路121を介さずに内部バス110に伝達することができる。   The first mask circuit 122 a is provided between the cache circuit 121 and the processing module 130. Specifically, the first mask circuit 122a includes a bus start signal line (BusStart), a read data signal line (RdData), and an acknowledgment signal line (Ack) that connect the cache circuit 121 and the processing module 130. Has been inserted inside. In response to a memory access request from the processing module 130, the cache circuit 121 and the protocol conversion circuit 123 operate in response to the bus start signal line (BusStart). Therefore, the memory access cycle from the processing module 130 does not pass through the cache circuit 121 by masking the bus start signal line (BusStart) from the processing module 130 to the cache circuit 121 without masking all signal lines. Can be transmitted to the internal bus 110.

第2のマスク回路122bは、バスバス用信号線路300に挿入されている。バスバス用信号線路300は、キャッシュ131を介さずに処理モジュール130と内部バス110との間を結合する信号線路である。バスバス用信号線路200は、ライトデータ信号線(WrData)、アドレス信号線(Address)、制御信号線(Ctrl)、バススタート信号線(BusStart)、リードデータ信号線(RdData)、及び肯定応答信号線(Ack)を含む。第2のマスク回路122bは、バスバス用信号線路300内に定義されたバススタート信号線(BusStart)、リードデータ信号線(RdData)、及び肯定応答信号線(Ack)に挿入されている。   The second mask circuit 122b is inserted in the bus bus signal line 300. The bus bus signal line 300 is a signal line that couples the processing module 130 and the internal bus 110 without using the cache 131. The bus bus signal line 200 includes a write data signal line (WrData), an address signal line (Address), a control signal line (Ctrl), a bus start signal line (BusStart), a read data signal line (RdData), and an acknowledge signal line. (Ack) is included. The second mask circuit 122b is inserted into the bus start signal line (BusStart), the read data signal line (RdData), and the acknowledgment signal line (Ack) defined in the bus bus signal line 300.

処理モジュール130のバスインタフェース133は、レジスタ134とアドレス比較部135とを備える。   The bus interface 133 of the processing module 130 includes a register 134 and an address comparison unit 135.

レジスタ134は、共有メモリ200に割り当てられたアドレス空間の内で上述した第2の経路でアクセスされるべき所定のアドレス領域を指定するアドレス情報を格納している。アドレス情報は、例えば、上述のアドレス領域に対応するアドレス範囲の、上限アドレス(Upper_Add)及び下限アドレス(Lower_Add)を格納している。   The register 134 stores address information for designating a predetermined address area to be accessed through the above-described second path in the address space allocated to the shared memory 200. The address information stores, for example, an upper limit address (Upper_Add) and a lower limit address (Lower_Add) in the address range corresponding to the address area described above.

アドレス比較部135は、処理モジュール130によって実行されるメモリアクセスサイクルによって指定されるメモリアドレスをレジスタ134に格納された上限アドレス及び下限アドレスと比較し、比較結果に応じて、第1のマスク回路122a及び第2のマスク回路122bに出力するチップセレクト信号の論理レベルを制御する。例えば、アドレス比較部135が、第1のマスク回路122aに出力するチップセレクト信号の論理レベルをLOWに制御して第1のマスク回路122aをディスエーブル状態に設定し、第2のマスク回路122bに出力するチップセレクト信号の論理レベルをHIGHに制御して第2のマスク回路122bをイネーブル状態に設定した場合、処理モジュール130は、キャッシュ回路121に接続される。一方、アドレス比較部135が、第1のマスク回路122aに出力するチップセレクト信号の論理レベルをHIGHに制御して第1のマスク回路122aをイネーブル状態に設定し、第2のマスク回路122bに出力するチップセレクト信号の論理レベルをLOWに制御して第2のマスク回路122bをディスエーブル状態に設定した場合、処理モジュール130は、キャッシュ回路121を経由せずにプロトコル変換回路123に接続される。   The address comparison unit 135 compares the memory address specified by the memory access cycle executed by the processing module 130 with the upper limit address and the lower limit address stored in the register 134, and according to the comparison result, the first mask circuit 122a. The logic level of the chip select signal output to the second mask circuit 122b is controlled. For example, the address comparison unit 135 controls the logic level of the chip select signal output to the first mask circuit 122a to LOW to set the first mask circuit 122a to the disabled state, and the second mask circuit 122b When the logic level of the chip select signal to be output is controlled to HIGH and the second mask circuit 122b is set to the enable state, the processing module 130 is connected to the cache circuit 121. On the other hand, the address comparison unit 135 controls the logic level of the chip select signal output to the first mask circuit 122a to HIGH, sets the first mask circuit 122a to the enable state, and outputs it to the second mask circuit 122b. When the logic level of the chip select signal to be controlled is controlled to LOW and the second mask circuit 122b is set to the disabled state, the processing module 130 is connected to the protocol conversion circuit 123 without going through the cache circuit 121.

なお、図2中、プロトコル変換回路123は、キャッシュ回路121と内部バス110との間に設けられている。しかし、プロトコル変換回路123は、キャッシュ回路121とモジュール130との間に設けてもよい。この場合、プロトコル変換後に、第1の経路及び第2の経路のいずれか一方が選択される。   In FIG. 2, the protocol conversion circuit 123 is provided between the cache circuit 121 and the internal bus 110. However, the protocol conversion circuit 123 may be provided between the cache circuit 121 and the module 130. In this case, one of the first route and the second route is selected after the protocol conversion.

図3を参照しつつ、共有メモリ200のアドレス空間について説明する。   The address space of the shared memory 200 will be described with reference to FIG.

図3は、共有メモリ200のアドレス空間を示す概略図である。図3に示すように、バスインタフェース133に格納される上限アドレス及び下限アドレスによって、第1の経路を用いてアクセスすべきアドレス領域(キャッシュon領域)が規定される。上限アドレス及び下限アドレスによって規定された範囲以外のアドレスへのアクセスは、第2の経路を用いてなされる。なお、図3では、1組の上限アドレス及び下限アドレスのみが示されているが、2以上の組の上限アドレス及び下限アドレスを規定することもできる。この場合、バスインタフェース133のレジスタ134に、2以上の組の上限アドレス及び下限アドレスを格納すればよい。また、ユーザは、例えば、CPU135に初期設定用ソフトウェアを実行させることによって、上限アドレス及び下限アドレスのそれぞれに、システム構成に応じて所望の値を柔軟に設定することができる。従って、複数の処理モジュール(モジュール130、モジュール140、モジュール150)によってアクセスされるアドレス範囲において、データのコヒーレンシを保つ必要がある場合、そのようなアドレス範囲を除くように、上限アドレス及び下限アドレスを設定すればよい。このため、設計が容易であり、新たなドライバ等を開発する必要もない。従って、複数のモジュールを含むLSI100、及びLSIを含む情報処理装置の開発期間を短縮することができる。   FIG. 3 is a schematic diagram showing an address space of the shared memory 200. As shown in FIG. 3, the address area (cache on area) to be accessed using the first path is defined by the upper limit address and the lower limit address stored in the bus interface 133. Access to an address outside the range defined by the upper limit address and the lower limit address is made using the second route. In FIG. 3, only one set of upper limit address and lower limit address is shown, but two or more sets of upper limit address and lower limit address may be defined. In this case, two or more sets of upper limit addresses and lower limit addresses may be stored in the register 134 of the bus interface 133. In addition, for example, the user can flexibly set a desired value in each of the upper limit address and the lower limit address according to the system configuration by causing the CPU 135 to execute initial setting software. Therefore, when it is necessary to maintain data coherency in an address range accessed by a plurality of processing modules (module 130, module 140, module 150), an upper limit address and a lower limit address are set so as to exclude such an address range. You only have to set it. For this reason, design is easy and it is not necessary to develop a new driver or the like. Therefore, the development period of the LSI 100 including a plurality of modules and the information processing apparatus including the LSI can be shortened.

なお、上記の説明では、内部バス110と処理モジュール130との間にのみブリッジ120が設けられている。しかし、内部バス110のプロトコルと処理モジュール140のモジュール内部バスのプロトコルとが異なる場合、内部バス110と処理モジュール140との間にブリッジを設けてもよい。同様に、内部バス110と処理モジュール150との間にブリッジを設けてもよい。あるいは、処理モジュール140及び処理モジュール150各々の、内部バス110とのインタフェース部分にプロトコル変換装置を設けてもよい。   In the above description, the bridge 120 is provided only between the internal bus 110 and the processing module 130. However, when the protocol of the internal bus 110 is different from the protocol of the module internal bus of the processing module 140, a bridge may be provided between the internal bus 110 and the processing module 140. Similarly, a bridge may be provided between the internal bus 110 and the processing module 150. Alternatively, a protocol conversion device may be provided in the interface part with the internal bus 110 in each of the processing module 140 and the processing module 150.

また、アプリケーション毎、又はモジュール毎に、キャッシュ回路(例えば、キャッシュ回路121)を利用するかしないかを規定してもよい。   Moreover, you may prescribe | regulate whether a cache circuit (for example, cache circuit 121) is utilized for every application or every module.

さらに、上記の説明では、共有メモリのアドレス空間において、第2の経路を用いないでアクセスされるアドレス空間の中に、第1の経路を用いて(即ち、キャッシュ回路121を介して)アクセスすべきアドレス範囲を、上限アドレス及び下限アドレスを設定することで規定している。しかし、第1の経路を用いてアクセスすべきアドレス範囲に、第2の経路を用いてアクセスすべきアドレス範囲を、上限アドレス及び下限アドレスを設定することで規定してもよい。   Further, in the above description, in the address space of the shared memory, the address space accessed without using the second route is accessed using the first route (that is, via the cache circuit 121). The address range to be specified is defined by setting an upper limit address and a lower limit address. However, the address range to be accessed using the second route may be defined by setting the upper limit address and the lower limit address in the address range to be accessed using the first route.

図4を参照しつつ、本発明の一実施形態に係るデータ転送制御方法について説明する。   A data transfer control method according to an embodiment of the present invention will be described with reference to FIG.

図4は、本発明の一実施形態に係るデータ転送制御方法を説明するためのフローチャートである。まず、バスインタフェース133のアドレス比較部135は、サブモジュール131、サブモジュール132、又はCPU135から、共有メモリ200へのアクセス要求を受け取る(ステップS400)。次いで、アドレス比較部135は、受け取ったアクセス要求で指定されたアドレスを、レジスタ134に格納された上限アドレス及び下限アドレスと比較する(ステップS402)。具体的には、サブモジュール131、サブモジュール132、又はCPU135によってメモリアクセスサイクルが実行された時、アドレス比較部135は、メモリアクセスサイクルによって指定されるメモリアドレスをアドレス信号線を介して取得し、そのメモリアドレスがレジスタ134に格納された上限アドレス及び下限アドレスと比較する。比較の結果、受け取ったアクセス要求で指定されたアドレスが、下限アドレス以上であり、且つ上限アドレス以下である場合、アドレス比較部135は、第1の経路を有効にする(ステップS404)。一方、比較の結果、受け取ったアクセス要求で指定されたアドレスが、下限アドレス未満である場合、又は上限アドレスよりも大きい場合、アドレス比較部135は、第2の経路を有効にする(ステップS406)。   FIG. 4 is a flowchart for explaining a data transfer control method according to an embodiment of the present invention. First, the address comparison unit 135 of the bus interface 133 receives an access request to the shared memory 200 from the submodule 131, the submodule 132, or the CPU 135 (step S400). Next, the address comparison unit 135 compares the address specified by the received access request with the upper limit address and the lower limit address stored in the register 134 (step S402). Specifically, when a memory access cycle is executed by the submodule 131, the submodule 132, or the CPU 135, the address comparison unit 135 acquires a memory address specified by the memory access cycle via the address signal line, The memory address is compared with the upper limit address and the lower limit address stored in the register 134. As a result of the comparison, if the address specified in the received access request is not less than the lower limit address and not more than the upper limit address, the address comparison unit 135 validates the first path (step S404). On the other hand, as a result of the comparison, if the address specified in the received access request is less than the lower limit address or greater than the upper limit address, the address comparison unit 135 validates the second path (step S406). .

上述した本発明の各実施形態によれば、簡単な構成で、複数のモジュール(130、140、150)の間でデータコヒーレンシを保ちつつ、共有メモリ(200)へのアクセス回数を削減してメモリアクセス効率を向上させることができる。   According to each embodiment of the present invention described above, the memory can be reduced by reducing the number of accesses to the shared memory (200) while maintaining data coherency between the plurality of modules (130, 140, 150) with a simple configuration. Access efficiency can be improved.

なお、本発明は、上記実施形態そのままに限定されるものではない。本発明は、実施段階では、その要旨を逸脱しない範囲で構成要素を変更して具現化できる。   In addition, this invention is not limited to the said embodiment as it is. In the implementation stage, the present invention can be embodied by changing the components without departing from the scope of the invention.

また、上記実施形態に開示されている複数の構成要素を適宜に組み合わせることで、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。更に、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。   Moreover, various inventions can be formed by appropriately combining a plurality of constituent elements disclosed in the embodiment. For example, some components may be deleted from all the components shown in the embodiment. Furthermore, constituent elements over different embodiments may be appropriately combined.

本発明の一実施形態に係るデータ転送制御装置の構成を概略的に示すブロック図である。It is a block diagram which shows roughly the structure of the data transfer control apparatus which concerns on one Embodiment of this invention. ブリッジ回路の構成と、モジュールのバスインタフェースの構成をより詳細に示すブロック図である。It is a block diagram which shows the structure of a bridge circuit and the structure of the bus interface of a module in detail. 共有メモリ200のアドレス空間を示す概略図である。2 is a schematic diagram showing an address space of a shared memory 200. FIG. 本発明の一実施形態に係るデータ転送制御方法を説明するためのフローチャートである。5 is a flowchart for explaining a data transfer control method according to an embodiment of the present invention;

符号の説明Explanation of symbols

100…LSI、110…内部バス、120…ブリッジ回路、121…キャッシュ回路、122a…第1のマスク回路、122b…第2のマスク回路、123…プロトコル変換回路、130…モジュール、130…バスインタフェース(BIF)、134…レジスタ(reg.)、135…アドレス比較部、140…モジュール、150…モジュール。   DESCRIPTION OF SYMBOLS 100 ... LSI, 110 ... Internal bus, 120 ... Bridge circuit, 121 ... Cache circuit, 122a ... 1st mask circuit, 122b ... 2nd mask circuit, 123 ... Protocol conversion circuit, 130 ... Module, 130 ... Bus interface ( BIF), 134, register (reg.), 135, address comparison unit, 140, module, 150, module.

Claims (6)

第1の処理モジュール及び第2の処理モジュールによって共有されるメモリに接続されたバスと前記第1の処理モジュールとの間に設けられたバスブリッジ装置であって、
前記メモリから読み出されるデータを格納するキャッシュと、
前記メモリに割り当てられたアドレス空間内の所定のアドレス領域を指定するアドレス情報を格納するレジスタと、
前記第1の処理モジュールによって実行されるメモリアクセスサイクルによって指定されるメモリアドレスと前記アドレス情報とを比較し、前記メモリアドレスが前記所定のアドレス領域に属する場合、前記第1の処理モジュールが前記キャッシュを介して前記メモリをアクセスする第1の経路を有効にし、前記メモリアドレスが前記所定のアドレス領域に属さない場合、前記第1の処理モジュールが前記キャッシュを介さずに前記メモリをアクセスする第2の経路を有効にする経路切り替え部と、
を具備することを特徴とする、バスブリッジ装置。
A bus bridge device provided between a bus connected to a memory shared by a first processing module and a second processing module and the first processing module,
A cache for storing data read from the memory;
A register for storing address information for designating a predetermined address area in an address space allocated to the memory;
The address information is compared with a memory address specified by a memory access cycle executed by the first processing module. When the memory address belongs to the predetermined address area, the first processing module Enabling a first path for accessing the memory via the first address, and when the memory address does not belong to the predetermined address area, the second processing module accesses the memory without going through the cache. A route switching unit that enables the route of
A bus bridge device comprising:
前記キャッシュを介さずに前記第1の処理モジュールと前記バスとの間を結合するバイパス用信号線路と、
前記キャッシュと第1の処理モジュールとの間に設けられた第1のマスク回路と、
前記バイパス用信号線路内に挿入された第2のマスク回路とを更に備え、
前記経路切り替え部は、前記第1の経路を有効にする場合、前記第1のマスク回路をディスエーブル状態に設定する共に前記第2のマスク回路をイネーブル状態に設定し、前記第2の経路を有効にする場合、前記第1のマスク回路をイネーブル状態に設定する共に前記第2のマスク回路をディスエーブル状態に設定することを特徴とする、請求項1記載のバスブリッジ装置。
A bypass signal line for coupling between the first processing module and the bus without going through the cache;
A first mask circuit provided between the cache and the first processing module;
A second mask circuit inserted in the bypass signal line,
The path switching unit, when enabling the first path, sets the first mask circuit to a disabled state, sets the second mask circuit to an enabled state, and sets the second path to the enabled state. 2. The bus bridge device according to claim 1, wherein, when enabled, the first mask circuit is set to an enabled state and the second mask circuit is set to a disabled state. 3.
前記レジスタは書き換え可能に構成されていることを特徴とする、請求項1記載のバスブリッジ装置。   The bus bridge device according to claim 1, wherein the register is configured to be rewritable. 第1の処理モジュールと、
第2の処理モジュールと、
前記第1の処理モジュールおよび前記第2の処理モジュールによって共有されるメモリと、
前記メモリに接続されたバスと前記第1の処理モジュールとの間に設けられ、前記メモリから読み出されるデータを格納するキャッシュと、
前記メモリに割り当てられたアドレス空間内の所定のアドレス領域を指定するアドレス情報を格納するレジスタと、
前記第1の処理モジュールによって実行されるメモリアクセスサイクルによって指定されるメモリアドレスと前記アドレス情報とを比較し、前記メモリアドレスが前記所定のアドレス領域に属する場合、前記第1の処理モジュールが前記キャッシュを介して前記メモリをアクセスする第1の経路を有効にし、前記メモリアドレスが前記所定のアドレス領域に属さない場合、前記第1の処理モジュールが前記キャッシュを介さずに前記メモリをアクセスする第2の経路を有効にする経路切り替え部と、
を具備することを特徴とする情報処理装置。
A first processing module;
A second processing module;
A memory shared by the first processing module and the second processing module;
A cache that is provided between the bus connected to the memory and the first processing module and stores data read from the memory;
A register for storing address information for designating a predetermined address area in an address space allocated to the memory;
The address information is compared with a memory address specified by a memory access cycle executed by the first processing module, and when the memory address belongs to the predetermined address area, the first processing module Enabling a first path for accessing the memory via the first address, and when the memory address does not belong to the predetermined address area, the second processing module accesses the memory without going through the cache. A route switching unit that enables the route of
An information processing apparatus comprising:
前記キャッシュを介さずに前記第1の処理モジュールと前記バスとの間を結合するバイパス用信号線路と、
前記キャッシュと第1の処理モジュールとの間に設けられた第1のマスク回路と、
前記バイパス用信号線路内に挿入された第2のマスク回路とを更に備え、
前記経路切り替え部は、前記第1の経路を有効にする場合、前記第1のマスク回路をディスエーブル状態に設定する共に前記第2のマスク回路をイネーブル状態に設定し、前記第2の経路を有効にする場合、前記第1のマスク回路をイネーブル状態に設定する共に前記第2のマスク回路をディスエーブル状態に設定することを特徴とする、請求項4記載の情報処理装置。
A bypass signal line for coupling between the first processing module and the bus without going through the cache;
A first mask circuit provided between the cache and the first processing module;
A second mask circuit inserted in the bypass signal line,
The path switching unit, when enabling the first path, sets the first mask circuit to a disabled state, sets the second mask circuit to an enabled state, and sets the second path to the enabled state. 5. The information processing apparatus according to claim 4, wherein, when being enabled, the first mask circuit is set to an enabled state and the second mask circuit is set to a disabled state. 6.
第1の処理モジュール及び第2の処理モジュールによって共有されるメモリに接続されたバスと前記第1の処理モジュールとの間に設けられたキャッシュを用いて、前記第1の処理モジュールと前記メモリとの間のデータ転送を制御するデータ転送制御方法であって、
前記第1の処理モジュールによって実行されるシングルアクセスによって指定されるメモリアドレスが前記メモリに割り当てられたアドレス空間内の所定のアドレス領域に属するか否かを判定するステップと、
前記メモリアドレスが前記所定のアドレス領域に属する場合、前記第1の処理モジュールが前記キャッシュを介して前記メモリをアクセスする第1の経路を有効にするステップと、
前記メモリアドレスが前記所定のアドレス領域に属さない場合、前記第1の処理モジュールが前記キャッシュを介さずに前記メモリをアクセスする第2の経路を有効にするステップと、
を具備することを特徴とする、データ転送制御方法。
Using a cache provided between a bus connected to a memory shared by the first processing module and the second processing module and the first processing module, the first processing module and the memory A data transfer control method for controlling data transfer between
Determining whether a memory address specified by a single access executed by the first processing module belongs to a predetermined address area in an address space allocated to the memory;
Enabling the first processing module to access the memory via the cache when the memory address belongs to the predetermined address area;
Enabling the second path for the first processing module to access the memory without going through the cache if the memory address does not belong to the predetermined address area;
A data transfer control method comprising:
JP2006325020A 2006-11-30 2006-11-30 Bus bridge device, information processor, and data transfer control method Pending JP2008140078A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006325020A JP2008140078A (en) 2006-11-30 2006-11-30 Bus bridge device, information processor, and data transfer control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006325020A JP2008140078A (en) 2006-11-30 2006-11-30 Bus bridge device, information processor, and data transfer control method

Publications (1)

Publication Number Publication Date
JP2008140078A true JP2008140078A (en) 2008-06-19

Family

ID=39601473

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006325020A Pending JP2008140078A (en) 2006-11-30 2006-11-30 Bus bridge device, information processor, and data transfer control method

Country Status (1)

Country Link
JP (1) JP2008140078A (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013546035A (en) * 2010-09-20 2013-12-26 クゥアルコム・インコーポレイテッド Inter-processor communication technique for multiple processor computing platforms
CN105991756A (en) * 2015-03-23 2016-10-05 富士施乐株式会社 Transfer apparatus, transfer system, and transfer method
JP2016177751A (en) * 2015-03-23 2016-10-06 富士ゼロックス株式会社 Transfer device, transfer system and program
JP2016537717A (en) * 2013-12-23 2016-12-01 インテル・コーポレーション System-on-chip (SoC) with multiple hybrid processor cores
JP2021190002A (en) * 2020-06-04 2021-12-13 富士フイルムビジネスイノベーション株式会社 Information processing device and program

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013546035A (en) * 2010-09-20 2013-12-26 クゥアルコム・インコーポレイテッド Inter-processor communication technique for multiple processor computing platforms
US8937622B2 (en) 2010-09-20 2015-01-20 Qualcomm Incorporated Inter-processor communication techniques in a multiple-processor computing platform
US9626234B2 (en) 2010-09-20 2017-04-18 Qualcomm Incorporated Inter-processor communication techniques in a multiple-processor computing platform
US9645866B2 (en) 2010-09-20 2017-05-09 Qualcomm Incorporated Inter-processor communication techniques in a multiple-processor computing platform
JP2016537717A (en) * 2013-12-23 2016-12-01 インテル・コーポレーション System-on-chip (SoC) with multiple hybrid processor cores
CN105991756A (en) * 2015-03-23 2016-10-05 富士施乐株式会社 Transfer apparatus, transfer system, and transfer method
JP2016177751A (en) * 2015-03-23 2016-10-06 富士ゼロックス株式会社 Transfer device, transfer system and program
JP2016177752A (en) * 2015-03-23 2016-10-06 富士ゼロックス株式会社 Transfer device, transfer system and program
US9870326B2 (en) 2015-03-23 2018-01-16 Fuji Xerox Co., Ltd. Transfer apparatus, transfer system, and non-transitory computer readable medium
JP2021190002A (en) * 2020-06-04 2021-12-13 富士フイルムビジネスイノベーション株式会社 Information processing device and program
JP7463855B2 (en) 2020-06-04 2024-04-09 富士フイルムビジネスイノベーション株式会社 Information processing device and program

Similar Documents

Publication Publication Date Title
US7907469B2 (en) Multi-port memory device for buffering between hosts and non-volatile memory devices
KR100868393B1 (en) Shared interface for cmponents in an embedded system
KR101517712B1 (en) Layer blending with alpha values of edges for image translation
JP2008041098A (en) Memory card and method for storing data thereof
JP2008305350A (en) Memory system, memory device, and method for controlling memory device
JP2004252960A (en) Memory controller
JP2008140078A (en) Bus bridge device, information processor, and data transfer control method
JP2011081553A (en) Information processing system and control method thereof
JP5856434B2 (en) Bus connection circuit, semiconductor device, and operation method of bus connection circuit
JP4773693B2 (en) Memory control system
JP2000276370A (en) Microcomputer, electronic equipment and emulation method
US20080282054A1 (en) Semiconductor device having memory access mechanism with address-translating function
JP2005182538A (en) Data transfer device
JP2009037639A (en) Dmac issue mechanism via streaming identification method
JP4965974B2 (en) Semiconductor integrated circuit device
JP2005107873A (en) Semiconductor integrated circuit
JP4583981B2 (en) Image processing device
KR20080034313A (en) Dual port memory having access control device, memory system having the same and access control method for dual port memory
JP2008123333A5 (en)
JP2008226276A (en) Programmable controller
US20090100220A1 (en) Memory system, control method thereof and computer system
JP2021089703A (en) SOC module
JP2007328647A (en) Data transfer method between cpus
JP5393626B2 (en) Information processing device
JP2004110299A (en) Memory device and data processing system