WO2003032169A1 - Processeur de donnees - Google Patents

Processeur de donnees Download PDF

Info

Publication number
WO2003032169A1
WO2003032169A1 PCT/JP2002/002699 JP0202699W WO03032169A1 WO 2003032169 A1 WO2003032169 A1 WO 2003032169A1 JP 0202699 W JP0202699 W JP 0202699W WO 03032169 A1 WO03032169 A1 WO 03032169A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
cache
external memory
cpu
buffer
Prior art date
Application number
PCT/JP2002/002699
Other languages
English (en)
French (fr)
Inventor
Tsukasa Kobayashi
Original Assignee
Supreme Magic Corporation
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 Supreme Magic Corporation filed Critical Supreme Magic Corporation
Publication of WO2003032169A1 publication Critical patent/WO2003032169A1/ja

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0877Cache access modes
    • G06F12/0879Burst mode

Definitions

  • the present invention relates to a data processing device that processes communication data using a CPU (Central Processing Unit), and in particular, a data processing device configured using an application-specific integrated circuit, so-called ASIC (Application Specific Integrated Circuit).
  • ASIC Application Specific Integrated Circuit
  • the present invention relates to a technology that is effective when applied to a device that processes communication data while accessing an external memory such as an SDRAM (Synchronous DRAM).
  • a data processing device such as a data communication terminal or a communication control device handles communication data transmitted and received serially in a time-series manner.
  • Processing is performed by temporarily storing the data in an external memory such as a DRAM.
  • an external memory such as a DRAM.
  • a so-called cache system cache memory system
  • cache memory system is known as a means for reading data stored in the external memory into the CPU at high speed and with high efficiency.
  • FIG. 3 shows a configuration example of a data processing device using a conventional cache system.
  • the main part of the device shown in the figure is configured using ASIC20.
  • AS I C20 there are provided a clock generator 11 and an SDRAM 31.
  • the clock generator 11 generates a synchronous clock ⁇ X for the system.
  • the SDRAM 31 temporarily stores communication data processed by the CPU 21.
  • a cache system 60 is incorporated together with a CPU 21, a decoder / controller 22, an SDRAM controller 23, and the like.
  • the cache system 60 includes a cache memory 60 and a cache controller 62.
  • the cache system 60 is interposed between the SDRAM 31 and the CPU bus 24, and temporarily stores memory data, which is frequently read and accessed by the CPU 21, in the cache memory 61 in the ASIC. By reducing the access frequency to 1, the average memory access time by the CPU 21 can be reduced.
  • FIG. 4 is a flowchart showing the operation of reading the communication data by the cache system described above. Shown as a yart.
  • the target data (the data addressed by the CPU 21 read access) is stored in the cache memory 61.
  • a cache search is performed to check whether or not exists (S21, S22). If the target data exists in the cache search, that is, if the search hits, the target data is read from the cache memory 61 (S23). Then, only when the cache search does not hit, the target data is read out by accessing the external SDRAM 31 (S24). This series of cache processing is repeated one byte or one word at a time, and the necessary data is read (S25).
  • the frequency of access to the external SDRAM 31 can be reduced accordingly, so that the average memory access time by the CPU 21 can be reduced. Can be.
  • data stored in the SDRAM 31 which is an external memory is read out while performing a cache process for each byte or each word.
  • serial communication data continuously transmitted and received in chronological order is often stored in an external memory such as the SDRAM 31 and processed in a continuous state in the transmission and reception order.
  • communication data is often processed as one continuous data block.
  • bucket communication which is the main method of digital communication
  • a block of continuous data of 256 bits (32 bytes or 16 words) or more, the so-called packet is the smallest unit of communication transmission. .
  • the cache processing of reading such continuous data while checking the presence or absence of a search hit for each byte or one word can be expected to reduce the average access time by reducing the frequency of access to the external memory.
  • the inventor has clarified that processing of communication data is not always efficient. That is, in the above-described conventional device, the series of processes (S21 to S25) shown in FIG. 4 must be repeated for each byte or word, and it is not always necessary to process continuous data such as packets. Not efficient.
  • the cache system 60 can achieve its effect only when the search hit rate is high. Therefore, it is necessary to configure the search hit rate to be high. However, for that purpose, a high-speed cache memory 61 as large as possible is required. This is because the search hit rate increases as the amount of cache data stored in the cache memory 61 increases.
  • the present invention has been made in view of the above background, and a main object of the present invention is to read, from an external memory such as an SDRAM, continuous data such as communication data and process the CPU to an ASIC or the like. It is an object of the present invention to provide a technology that can be implemented more efficiently than a device using a conventional cache system with a small-scale hardware configuration that can be easily incorporated.
  • Means according to the present invention is a data processing device for processing communication data while accessing an external memory with a CPU, and is characterized by the following (1) to (3).
  • a data buffer is provided between the external memory and the CPU to hold data for a plurality of CPU memory accesses.
  • the pseudo cache system performs the above operation in a state in which the cache target data is continuous in addition to the non-hit cache target data.
  • the data stored in the external memory is also configured to be transferred from the external memory to the data buffer as pseudo cache data.
  • the operation of reading continuous data such as communication data from external memory such as SDRAM and causing the CPU to process the data can be easily incorporated into an ASIC or the like.
  • a small-scale hardware configuration that can be used, it can be performed more efficiently than a device using a conventional cache system.
  • a data buffer for holding data in bucket units in parallel is provided between the external memory and the CPU, and the data buffer is simulated as a cache memory.
  • a cache system may be constructed, and data may be transferred from the external memory to the data buffer in units of the bucket when cache search by the pseudo cache system is not hit.
  • the data buffer need only have a parallel bit width corresponding to the data length of one bucket.
  • the CPU and the pseudo-cache system can be incorporated into the same ASIC.
  • the data transfer between the data buffer and the external memory is performed via a wide-bit data bus having the same bit width as the parallel bit width of the above-described data buffer.
  • a wide-bit data bus having the same bit width as the parallel bit width of the above-described data buffer.
  • a bus controller for mediating data exchange between the two is provided to reduce the bus width of the external memory.
  • the data transfer between the external memory and the data buffer can be sped up without restriction.
  • the bus controller can also be incorporated in the ASIC.
  • SDRAM can be used as the external memory.
  • FIG. 1 is a block diagram showing an embodiment of a data processing device according to the present invention.
  • FIG. 2 is a flowchart showing the configuration and operation of the data processing device according to the present invention.
  • FIG. 3 is a block diagram showing a configuration example of a conventional data processing device.
  • FIG. 4 is a flowchart showing the configuration and operation of a conventional data processing device.
  • FIG. 1 shows an embodiment of a data processing device according to the present invention.
  • the device shown in the figure constitutes a communication data processing device such as a data communication terminal or a communication control device.
  • the main part is constructed using ASIC 20.
  • An external generator 11 and SDRAM 31 are provided outside the ASIC 20.
  • the clock generator 11 generates a synchronous clock ⁇ X for the system.
  • the SDRAM 31 serves as an external memory for temporarily storing communication data processed by the CPU 21.
  • Communication data is usually input and output in the order of communication transmission (or transmission and reception). Therefore, input / output of communication data to / from the SDRAM 31 is often performed in the order of the communication transmission. For example, in the case of bucket communication data, the order of transmission and reception between buckets and the order of data in the bucket are stored in the SDRAM 31 in a saved state.
  • a pseudo cache system 50 having a function of a wide bit buffer is incorporated together with the CPU 21, the decoder / controller 22, the SDRAM controller 23, and the like.
  • the pseudo cache system 50 is composed of an R / W (read / write) data buffer 51, a wide bit 'data bus 52, a wide bit ⁇ bus controller 53, a buffer controller 54, and the like. .
  • the pseudo cache system 50 is interposed between the SDRAM 31 and the CPU bus 24, as if it were a cache system, and mediates data exchange between the two (31, 24).
  • the RZW data buffer 51 is composed of parallel registers and the like, and has a parallel bit width equivalent to the data length of one packet, for example, 256 bits (32 bytes or 16 words). It has a bit width.
  • One data input / output port of this R / W data buffer 51 is connected to the CPU bus 24, and the other input / output port is a wide bit with the same parallel bit width as the above bit width (256 bits).
  • G Connect to data bus 52. That is, one data input / output port of the R / W data buffer 51 has the same bit width (for example, 16 bits or 32 bits) as the CPU bus 24, and the other data input / output port has one packet. It has a bit width of 256 g (256 bits).
  • the wide-bit data bus 52 is connected via a wide-bit bus controller 53 to the SDRAM bus 32 having a bit width corresponding to the data width of the SDRAM 31.
  • Wide bit ⁇ The bus controller 53 intervenes between the wide-bit data bus 52 and the SD RAM bus 32 to convert the bit width, and to convert the data between the two (52 and 32). Mediate exchanges.
  • the buffer controller 54 controls the pseudo bit access of the wide bit data held in the R / W data buffer 51 from the CPU 21 side. That is, the R / W data buffer 51 corresponds to the cache memory in the conventional cache system, and the buffer controller 54 stores the target data (data addressed by the read access of the CPU 21) in the buffer 51. Each is configured to correspond to a cache controller that checks whether it exists.
  • the buffer 51 stores the data of the wide bit, but the storage capacity is much smaller than the cache memory in the conventional cache system, and it can hold one packet or at most several packets of data.
  • the function of the buffer controller 54 which searches whether or not the target data exists in the buffer 51, is significantly simplified in terms of hardware as compared with the cache controller in the conventional cache system. Has been
  • FIG. 2 is a flowchart illustrating the operation of reading the communication data by the pseudo cache system 50 described above.
  • the CPU 21 reads and accesses the communication data stored in the external SDRAM 31, first, a pseudo cache search for checking whether the target data exists in the buffer 51 is performed. Perform (S11, S12).
  • the target data (cache target data) exists in the pseudo cache search, that is, if the pseudo search is hit, the target data is read from the buffer 51 (S14).
  • the pseudo cache search does not hit, the external SDRAM 31 is accessed and the target data is read therefrom (S13).
  • the data read from the SDRAM 31 includes not only the target data but also data following the target data. In other words, if the data to be cached is not in the buffer 51, the cache data and the wide-bit (256-bit) data including the data stored continuously in the cache data are included. Continuous data is read from SDRAM31.
  • the continuous read data of the wide bits is transferred to the buffer 51 at a high speed via the wide bit data bus 52 (S13). Then, from the wide bit data transferred to the buffer 51, target data (Data to be cached) is read by the CPU 21 via the CPU bus 24 (S14). In this way, when the CPU 21 performs read access, data (cache target data) specified by the access is read from the R / W data buffer 51 as a pseudo cache.
  • the communication data is normally stored in the SDRAM 31 in the communication transmission order (or the transmission and reception order).
  • the order of transmission and reception between packets and the order of data in the packet are stored in the SDRAM 31 in a saved state. Therefore, in the above pseudo cache system 50, if the pseudo cache search does not hit, in addition to the cache target data that did not hit, data that is continuous with the cache target data in the communication transmission order is also included. Then, the data is transferred as pseudo cache data from the SD RAM 31 to the data buffer 51.
  • a high search hit rate (pseudo search hit rate) can be obtained despite the fact that the hardware scale is significantly smaller than the formal cache system.
  • the frequency of access to the SDRAM 31 can be reliably reduced, and the average memory access time by the CPU 21 can be reliably reduced.
  • the data processing device of the present invention has a small-scale pseudo-cache system configured using the R / W data buffer 51 having a storage capacity of one packet or at most several buckets.
  • the operation of reading data having continuity such as communication data from the SDRAM 31 and causing the CPU 21 to process the data is described below. It can be performed much more efficiently than devices using conventional cache systems.
  • the present invention has been described with reference to the typical embodiments. However, the present invention can have various aspects other than those described above.
  • the present invention is also applicable to processing of continuous data other than communication data.
  • the operation of reading continuous data such as communication data from an external memory such as an SDRAM and causing the CPU to process the data has a small-scale hardware configuration that can be easily incorporated into an AS IC or the like. This can be performed more efficiently than a device using a conventional cache system.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Description

明細書
データ処理装置
技術分野
本発明は C P U (Central Processing Unit)を用いて通信データの処理を行う データ処理装置、 とくに、 特定用途向け集積回路いわゆる A S I C (Applicati on Specific Integrated Circuit)を用いて構成されるデータ処理装置であって、 SDRAM (Synchronous DRAM)等の外部メモリをアクセスしながら通信データ の処理を行うものに適用して有効な技術に関する。
背景技術
たとえばデータ通信端末や通信制御装置などのデータ処理装置は、時系列的に 連続してシリアルに送受信される通信データを扱うために、その通信データを s
DRAM等の外部メモリに一時的に蓄積して処理することが行われる。 この場合、 その外部メモリに蓄積されているデータを高速かつ効率良く C PUに読み取ら せる手段として、 いわゆるキャッシュシステム (キャッシュ 'メモリ ■システム) が知られている。
図 3は、従来のキヤッシュシステムを使用したデータ処理装置の構成例を示す。 同図に示す装置は、 その主要部が AS I C 2 0を用いて構成されている。 AS I C 20の外部には、 ク口ック発生器 1 1や SDRAM3 1などが設けられている。 ク口ック発生器 1 1はシステムの同期クロック φ Xを生成する。 SDRAM3 1 は C PU 2 1が処理する通信データを一時的に蓄積する。
A S I C 2 0の内部には、 C PU 2 1、 デコーダ /コントローラ 2 2、 SDR AMコントローラ 2 3などとともに、 キヤッシュシステム 6 0が組み込まれてい る。 キヤッシュシステム 6 0は、 キャッシュメモリ 6 0とキャッシュコントロー ラ 6 2によって構成される。
キャッシュシステム 6 0は、 S D R AM 3 1 と C P Uバス 24の間に介在し、 C P U 2 1からの読出アクセス頻度が高いメモリデータを A S I C内のキヤッ シュメモリ 6 1に一時的に置く ことにより、 SDRAM 3 1へのアクセス頻度を 下げて、 C PU 2 1による平均的なメモリアクセス時間を短縮させることができ る。
図 4は、上述したキャッシュシステムによる通信データの読出動作をフローチ ヤート化して示す。 同図において、 外部の SDRAM3 1に蓄積されている通信 データを C P U 2 1が読出アクセスする場合は、 まず、 キャッシュメモリ 6 1に 目的のデータ (C PU 2 1の読出アクセスによってァドレス指定されたデータ) が存在するか否かをチユックするキャッシュ検索を行う (S 2 1 , S 2 2) 。 このキヤッシュ検索にて目的のデータが存在した場合すなわち検索ヒットの 場合は、 キャッシュメモリ 6 1からその目的のデータを読み出す (S 2 3) 。 そ して、 キヤッシュ検索がヒットしなかった場合だけ、 外部 SDRAM 3 1をァク セスして目的のデータを読み出す (S 24) 。 この一連のキャッシュ処理を 1バ イ トまたは 1ワードごとに繰り返して必要なデータを読み出す (S 2 5) 。
上記キヤッシュ検索のヒ ット率が高ければ、 その分、 外部 S D R AM 3 1への アクセス頻度を下げることができるので、 これにより、 C PU 2 1による平均的 なメモリアクセス時間の短縮をはかることができる。
上述したキャッシュシステム 6 0を有するデータ処理装置では、外部メモリで ある S DRAM 3 1の記憶データを 1バイ トまたは 1ヮードごとにキヤッシュ 処理しながら読み出す。 一方、 時系列的に連続して送受信されるシリアルな通信 データは、その送受信順に連続した状態で SDRAM 3 1等の外部メモリに蓄積 されて処理されることが多い。 つまり、 通信データは、 一つの連続したデータブ ロックとして処理される場合が多いという特質がある。 たとえば、 デジタル通信 の主方式であるバケツト通信では、 2 5 6ビッ ト(3 2バイ トまたは 1 6ヮード) あるいはそれ以上の連続するデータのプロックいわゆるパケッ トが通信伝送の 最小単位となっている。
このような連続データを 1バイ トまたは 1ヮードごとに検索ヒットの有無を 確認しながら読み出すキャッシュ処理は、外部メモリへのアクセス頻度を下げる ことによる平均ァクセス時間の短縮という効果は期待できるものの、上記通信デ ータの処理では、 必ずしも効率的ではないことが、 本発明者によってあきらかに された。 すなわち、 上述した従来の装置では、 図 4に示した一連の処理 (S 2 1 〜 S 25 ) を 1バイ トまたは 1ワードごとに繰返さなければならず、 パケットの ような連続データの処理では必ずしも効率的ではない。
また、キヤッシュシステム 60は検索ヒット率が高い場合にはじめてその効果 を相することができる。 したがって、 検索ヒット率が高くなるように構成する必 要があるが、 そのためには、 できるだけ大容量の高速キャッシュメモリ 6 1が必 要となる。 検索ヒッ ト率は、 キャッシュメモリ 6 1に置くキャッシュデータの量 が多いほど高くなるからである。
大容量の高速キャッシュメモリを持つことはハードウエア負担が大きく、 これ を使用すると、 装置が非常にコス ト高になってしまう。 また、 ハードウェア資源 が限られている A S I Cにおいては、使用可能な回路資源があらかじめ定められ ているので、 キャッシュメモリの容量を十分に確保することが困難である。 しか し、そのキヤッシュシステム 6 0のハードウエアを A S I Cにも無理なく糸且み込 めるように小規模化させると、上記検索ヒッ ト率が低下してキヤッシュシステム 本来の効果が得られなくなつてくるという背反が生じる。
本発明は、以上のような背景を鑑みてなされたものであり、その主たる目的は、 通信データのような連続データを S D R AM等の外部メモリから読み出して C P Uに処理させる動作を、 A S I Cなどにも簡単に組み込むことができる小規模 なハードウエア構成でもって、従来のキヤッシュシステムを用いた装置より も効 率良く行わせることが可能な技術を提供することにある。
発明の開示
本発明による手段は、 C P Uで外部メモリをアクセスしながら通信データの処 理を行うデータ処理装置であって、 次の ( 1 ) 〜 (3 ) によって特定されること を特徴とする。
( 1 ) 上記外部メモリと上記 C P Uの間に、 C P Uのメモリアクセス複数回分の データを保持するデータバッファが介在させられている。
( 2 ) 上記データバッファをキャッシュメモリに見立てた疑似キャッシュシステ ムが構築されている。
( 3 ) 上記疑似キャッシュシステムは、 その疑似キャッシュシステムによるキヤ ッシュ検索がヒッ トしなかった場合に、そのヒットしなかったキャッシュ対象デ ータのほかに、そのキヤッシュ対象データに連続した状態で上記外部メモリに蓄 積されているデータも、その外部メモリから上記データバッファへ疑似キヤッシ ュデータとして転送させるように構成されている。
上記手段によれば、通信データのような連続データを S D R A M等の外部メモ リから読み出して C P Uに処理させる動作を、 A S I Cなどにも簡単に組み込む ことができる小規模なハードウエア構成でもって、従来のキヤッシュシステムを 用いた装置よりも効率良く行わせることができる。
上記手段おいて、 通信データがバケツ トデータである場合、 上記外部メモリ と 上記 C P Uの間にバケツ ト単位のデータを並列に保持するデータバッファを介 在させ、 このデータバッファをキャッシュメモリに見立てた疑似キャッシュシス テムを構築するとともに、 この疑似キャッシュシステムによるキヤッシュ検索が ヒッ トしなかった場合に行われる上記外部メモリから上記データバッファへの データの転送を上記バケツト単位で行わせるようにすればよい。 この場合、 デー タバッファは 1バケツ ト分のデータ長に相当する並列ビッ ト幅を持たせるだけ でもよい。 C P Uおよび疑似キヤッシュシステムは同一の A S I C内に組み込む こむことができる。
また、 データバッファと外部メモリ間のデータ転送を、 上記データバッファの 並列ビッ ト幅と同じビッ ト幅のワイ ドビッ ト 'データバスを介して行わせるとと もに、 このワイ ドビッ ト ·データバスを、 C P Uおよび疑似キャッシュシステム と共に、 同一の A S I C内に組み込むことができる。
さらに、 上記ワイ ドビッ ト ·データバスと前記外部メモリ間に介在してビッ ト 幅の変換を行いながら、両者間でのデータやり取りを媒介するバスコントローラ を介在させることにより、 外部メモリのバス幅に制約されることなく、 その外部 メモリ と上記データバッファ間のデータ転送を高速化することができる。上記バ スコントローラも上記 A S I C内に組み込むことができる。
上記外部メモリ としては S D R AMを使用することができる。
図面の簡単な説明
図 1は、 本発明によるデータ処理装置の一実施例を示すプロック図である。 図 2は、本発明によるデータ処理装置の構成と動作を示すフローチヤ一トであ る。
図 3は、 従来のデータ処理装置の構成例を示すプロック図である。
図 4は、 従来のデータ処理装置の構成と動作を示すフローチャートである。
発明を実施するための最良の形態
図 1は本発明によるデータ処理装置の一実施例を示す。 同図に示す装置はデー タ通信端末や通信制御装置などの通信データ処理装置をなすものであって、その 主要部は A S I C 20を用いて構成されている。
AS I C 2 0の外部には、 ク口ック発生器 1 1や SDRAM 3 1などが設けら れている。 ク口ック発生器 1 1はシステムの同期クロック φ Xを生成する。 S D RAM 3 1は C PU 2 1が処理する通信データを一時的に蓄積する外部メモリ をなす。
通信データは通常、 通信伝送順 (あるいは送受信順) に入出力される。 したが つて、 SDRAM 3 1に対する通信データの入出力も、 その通信伝送順に行われ る場合が多い。 たとえば、 バケツ ト通信データの場合、 バケツ ト間の送受信順お よびバケツト内のデータ順が保存された状態で SDRAM 3 1に蓄積される。
AS I C 2 0の内部には、 C PU 2 1、 デコーダ /コントローラ 2 2、 S D R AMコントローラ 23などとともに、 ワイ ドビッ トバッファの機能の持つ擬似キ ャッシュシステム 50が組み込まれている。
擬似キヤッシュシステム 5 0は、 R/W (リード/ライ ト) データバッファ 5 1、 ワイ ドビッ ト 'データバス 5 2、 ワイ ドビッ ト ■ バスコントローラ 5 3、 ノ ッファコントローラ 54などによって構成されている。 この擬似キヤッシュシス テム 5 0は、 あたかもキャッシュシステムのごとく、 S D R AM 3 1 と C P Uバ ス 24の間に介在して、 両者 (3 1 , 24) 間でのデータやり取りを媒介する。
R ZWデ一タバッファ 5 1は並列レジスタなどによつて構成され、 1パケッ ト 分のデータ長に相当する並列ビッ ト幅、 たとえば 25 6ビッ ト ( 3 2バイ トまた は 1 6ワード) の並列ビッ ト幅を持つ。 この R/Wデータバッファ 5 1の一方の データ入出力ポートは C PUバス 24に接続し、他方の入出力ポートは上記ビッ ト幅 ( 2 5 6ビッ ト) と同じ並列ビッ ト幅のワイ ドビッ ト ■データバス 5 2に接 続する。 つまり、 R/Wデータバッファ 5 1の一方のデータ入出力ポートは C P Uバス 24と同じビッ ト幅 (たとえば 1 6ビッ トあるいは 3 2ビッ ト) を有し、 他方のデータ入出力ポートは 1パケッ ト分のビッ ト幅( 2 5 6ビッ ト)を有する。
ワイ ドビッ ト ·データバス 5 2は、 ワイ ドビッ ト ■バスコントローラ 5 3を介 して、 SDRAM 3 1のデータ幅に合わせたビット幅を有する SDRAMバス 3 2に接続している。 ワイ ドビッ ト ■バスコントローラ 5 3は、 ワイ ドビッ ト 'デ ータバス 5 2と S D RAMバス 3 2間に介在してビッ ト幅の変換を行いながら、 両者 (5 2と 3 2) 間でのデータやり取りを媒介する。 バッファコントローラ 54は、上記 R/Wデータバッファ 5 1に保持されてい るワイ ドビッ トのデータを C PU 2 1側から擬似アクセスさせるための制御を 行う。 つまり、 R/Wデータバッファ 5 1は従来のキヤッシュシステムにおける キャッシュメモリに対応し、バッファコントローラ 54はそのバッファ 5 1に目 的のデータ (C PU 2 1の読出アクセスによってァドレス指定されたデータ) が 存在するか否かをチェックするキャッシュコントローラに対応するように、それ ぞれ構成されている。
上記バッファ 5 1はワイ ドビッ トのデータを格納するが、その記憶容量は従来 のキヤッシュシステムにおけるキヤッシュメモリよりも格段に小さく、 1パケッ ト分あるいはせいぜい数パケット分のデータを保持できる程度である。 これに伴 い、そのバッファ 5 1内に目的のデータが存在するか否かを検索するバッファコ ントローラ 5 4の機能も、従来のキヤッシュシステムにおけるキヤッシュコント ローラに比べると、 ハードウエア的に大幅に簡略化されている。
図 2は、上述した擬似キヤッシュシステム 5 0による通信データの読出動作を フローチヤ一ト化して示す。 同図において、 外部 SDRAM 3 1に蓄積されてい る通信データを C PU 2 1が読出アクセスする場合は、 まず、 バッファ 5 1に目 的のデータが存在するか否かをチェックする疑似キヤッシュ検索を行う (S 1 1, S 1 2) 。
この疑似キャッシュ検索にて目的のデータ (キャッシュ対象データ) が存在し た場合すなわち疑似検索がヒ ットした場合は、バッファ 5 1からその目的のデー タを読み出す(S 1 4)。一方、疑似キャッシュ検索がヒットしなかった場合は、 外部 SDRAM3 1をアクセスしてそこから目的のデータを読み出す(S 1 3)。 このとき、 その SDRAM3 1からのデータ読み出しは、 目的のデータだけでは なく、 その目的データの後に続くデータも対象とされる。 つまり、 キャッシュ対 象データがバッファ 5 1になかった場合は、 そのキヤッシュデータとともに、 そ のキャッシュデータに連続した状態で蓄積されているデータも含めたワイ ドビ ット (2 5 6ビッ ト) の連続データが、 SDRAM3 1から読み出される。
このワイ ドビッ ト ( 2 5 6ビッ ト) の連続読出データは、 ワイ ドビッ ト 'デー タバス 5 2を介して、 上記バッファ 5 1に高速転送される (S 1 3) 。 そして、 そのバッファ 5 1に転送されたワイ ドビットのデータの中から、 目的のデータ (キヤッシュ対象データ) が C PUバス 24を介して C PU 2 1に読み取られる (S 1 4) 。 このようにして、 C PU 2 1が読出アクセスを行う と、 そのァクセ スによつて指定されたデータ (キャッシュ対象データ) が R/Wデータバッファ 5 1から疑似キャッシュ的に読み出される。
ここで、 通信データは通常、 通信伝送順 (あるいは送受信順) に SDRAM3 1に蓄積される。 たとえば、 パケッ ト通信データの場合、 パケッ ト間の送受信順 およびバケツ ト内のデータ順が保存された状態で SDRAM3 1に蓄積される。 したがって、 上記疑似キャッシュシステム 5 0において、 疑似キャッシュ検索が ヒッ トしなかった場合は、そのヒッ トしなかったキヤッシュ対象データのほかに、 そのキャッシュ対象データに対して通信伝送順に連続するデータも一緒に、 SD RAM 3 1からデータバッファ 5 1へ疑似キヤッシュデータとして転送される ことになる。
このあと、 C PU 2 1がさらに次にデータの読出アクセスを行うと(S 1 5)、 上述した一連の疑似キヤッシュ動作 (S 1 1〜S 14) が繰り返されるが、 ここ で注目すべきことは、 この後の読出アクセスでは、 上記 RZWデータバッファ 5 1にまだ読み出されずに保持されている残りのデータが読み出される確率が非 常に高いということである。 バケツ ト等のシリアルな通信データは、 その連続性 により、 ほとんど場合、 連続して読出アクセスされる。 したがって、 疑似キヤッ シュ検索がヒッ トしないことによって S D RAM 3 1からバッファ 5 1へ連続 データがいったん転送されると、 そのあとは、 そのバッファ 5 1に転送された連 続データがすべて読み出されるまで、疑似キヤッシュの検索は非常に高確率でヒ ッ ト状態が続く。 したがって、 上述した疑似キャッシュシステムでは、 正式なキ ャッシュシステムに比べてハードウエア規模が大幅に小さいにもかかわらず、高 い検索ヒッ ト率 (疑似検索ヒッ ト率) が得られる。 これにより、 SDRAM3 1 へのアクセス頻度を確実に下げて、 C PU 2 1による平均的なメモリアクセス時 間を確実に短縮させることが可能になる。
以上のように、 本発明のデータ処理装置では、 1パケッ ト分あるいはせいぜい 数バケツ ト分の記憶容量しか持たない R/Wデータバッファ 5 1を使って構成 される小規模な疑似キヤッシュシステムでもって、通信データのような連続性を 持つデータを SDRAM 3 1から読み出して C PU 2 1に処理させる動作を、従 来のキャッシュシステムを用いた装置よりも大幅に効率良く行わせることがで きる。
以上、 CPU 2 1から S D R AM 3 1に対してデータの読出アクセスを行う場 合の動作について説明したが、 C PU 2 1から SDRAM3 1に対してデータの 書込アクセスを行う場合は、 C P U 2 1からワイ ドビッ ト幅の R/Wデータバッ ファ 5 1に対する書込アクセスを行うことにより、そのバッファ 5 1に書き込ま れたデータをワイ ドビッ ト幅のデータバス 5 2およびバスコントローラ 5 3を 介して SDRAM 3 1に高速転送させることができる。 これにより、 書込ァクセ スも確実に高速化することができる。
以上、 本発明をその代表的な実施例を参照しながら説明したが、 本発明は上述 した以外にも種々の態様が可能である。 また、 本発明は通信データ以外の連続的 なデータの処理にも適用可能である。
産業上の利用可能性
本発明によれば、通信データのような連続データを SDRAM等の外部メモリ から読み出して C PUに処理させる動作を、 AS I Cなどにも簡単に組み込むこ とができる小規模なハードウエア構成でもって、従来のキャッシュシステムを用 いた装置よりも効率良く行わせることができる。

Claims

請求の範囲
1 . C P Uで外部メモリをアクセスしながら通信データの処理を行うデータ処理 装置であって、 次の ( 1 ) 〜 (3 ) によって特定される発明。
( 1 ) 上記外部メモリ と上記 C P Uの間に、 C P Uのメモリアクセス複数回分の データを保持するデータバッファが介在させられている。
( 2 )上記データバッファをキャッシュメモリに見立てた疑似キヤッシュシステ ムが構築されている。
( 3 ) 上記疑似キヤッシュシステムは、 その疑似キャッシュシステムによるキヤ ッシュ検索がヒッ トしなかった場合に、そのヒッ トしなかったキヤッシュ対象デ ータのほかに、そのキャッシュ対象データに連続した状態で上記外部メモリに蓄 積されているデータも、その外部メモリから上記データバッファへ疑似キヤッシ ュデータとして転送させるように構成されている。
2 . 請求項 1の発明において、 上記外部メモリ と上記 C P Uの間にバケツト単位 のデータを並列に保持するデータバッファを介在させ、 このデータバッファをキ ャッシュメモリに見立てた疑似キャッシュシステムを構築するとともに、 この疑 似キヤッシュシステムによるキヤッシュ検索がヒッ トしなかった場合に行われ る上記外部メモリから上記データバッファへのデータの転送を上記パケッ ト単 位で行わせることを特徴とするデータ処理装置。
3 . 請求項 1または 2の発明において、 前記データバッファは 1バケツ ト分のデ ータ長に相当する並列ビッ ト幅を持たされていることを特徴とするデータ処理
4 . 請求項 1〜 3のいずれかの発明において、 前記 C P Uおよび前記疑似キヤッ シュシステムを同一の A S I C内に組み込んだことを特徴とするデータ処理装 置。
5 . 請求項 1〜4のいずれか発明において、 前記データバッファと前記外部メモ リ間のデータ転送を、前記データバッファの並列ビット幅と同じビッ ト幅のワイ ドビッ ト ·データバスを介して行わせるとともに、 このワイ ドビッ ト ■データバ スを、 前記 C P Uおよび前記疑似キャッシュシステムと共に、 同一の A S I C内 に組み込んだことを特徴とするデータ処理装置。
6 . 請求項 5の発明において、 前記ワイ ドビッ ト 'データバスと前記外部メモリ 間に介在してビッ ト幅の変換を行いながら、両者間でのデータやり取りを媒介す るバスコントローラを介在させるとともに、 このバスコントローラを前記 A S I c内に組み込んだことを特徴とするデータ処理装置。
7. 請求項 1〜 6のいずれかの発明において、 前記外部メモリが SDRAMであ ることを特徴とするデータ処理装置。
PCT/JP2002/002699 2001-09-28 2002-03-20 Processeur de donnees WO2003032169A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2001-304110 2001-09-28
JP2001304110A JP2003108438A (ja) 2001-09-28 2001-09-28 データ処理装置

Publications (1)

Publication Number Publication Date
WO2003032169A1 true WO2003032169A1 (fr) 2003-04-17

Family

ID=19124082

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2002/002699 WO2003032169A1 (fr) 2001-09-28 2002-03-20 Processeur de donnees

Country Status (2)

Country Link
JP (1) JP2003108438A (ja)
WO (1) WO2003032169A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9959919B2 (en) 2015-03-20 2018-05-01 Kabushiki Kaisha Toshiba Memory system including non-volatile memory of which access speed is electrically controlled

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9281036B2 (en) * 2013-01-08 2016-03-08 Qualcomm Incorporated Memory device having an adaptable number of open rows

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09179779A (ja) * 1995-06-02 1997-07-11 Sun Microsyst Inc コンピュータシステムおよびデータ転送方法
JP2000341328A (ja) * 1999-05-27 2000-12-08 Fujitsu Ltd データ中継装置
JP2001175534A (ja) * 1999-12-17 2001-06-29 Sanyo Electric Co Ltd メモリ制御回路

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09179779A (ja) * 1995-06-02 1997-07-11 Sun Microsyst Inc コンピュータシステムおよびデータ転送方法
JP2000341328A (ja) * 1999-05-27 2000-12-08 Fujitsu Ltd データ中継装置
JP2001175534A (ja) * 1999-12-17 2001-06-29 Sanyo Electric Co Ltd メモリ制御回路

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9959919B2 (en) 2015-03-20 2018-05-01 Kabushiki Kaisha Toshiba Memory system including non-volatile memory of which access speed is electrically controlled

Also Published As

Publication number Publication date
JP2003108438A (ja) 2003-04-11

Similar Documents

Publication Publication Date Title
JP5902834B2 (ja) 暗示的なメモリの登録のための明示的なフロー制御
US7315550B2 (en) Method and apparatus for shared buffer packet switching
TWI391819B (zh) 用於在匯流排上傳送記憶體預取命令之方法及系統
US7782863B2 (en) Method and apparatus for data transfer
US7571297B2 (en) Data invalid signal for non-deterministic latency in a memory system
KR101121592B1 (ko) 버스트 판독기록 동작을 구비한 처리 장치
US9304939B2 (en) Method and multi-core communication processor for replacing data in system cache
WO2012009873A1 (zh) 一种搜索处理装置及网络系统
CN117093881A (zh) 一种数据压缩方法、装置及电子设备和存储介质
WO2003003228A1 (en) Memory control for multiple read requests
WO2003032169A1 (fr) Processeur de donnees
CN101777037A (zh) 一种查找引擎实时系统内数据传输的方法和系统
JP2002084311A (ja) パケット転送処理装置
US7424653B2 (en) System and method for error capture and logging in computer systems
US20220318166A1 (en) Serial communication method and system for memory access
US20230066736A1 (en) On-demand packetization for a chip-to-chip interface
US20040236982A1 (en) System and method for in-order queue draining
CN113422792B (zh) 数据传输方法、装置、电子设备及计算机存储介质
JP3096576B2 (ja) メモリ制御回路とその回路を内蔵した集積回路素子
CN111541823B (zh) 一种调制解调器以及通信装置
US7350053B1 (en) Software accessible fast VA to PA translation
JP4502796B2 (ja) ストリームパケット受信装置
EP1668525B1 (en) Data transfer management method, software and system
US20100131679A1 (en) Apparatus for performing a downlink or uplink processing in a wireless communication system to maintain the efficiency of system bandwidth, and associated methods
KR100198789B1 (ko) 수신 연결망 인터페이스의 구조

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BY BZ CA CH CN CO CR CU CZ DE DM DZ EC EE ES FI GB GD GE GH HR HU ID IL IN IS KE KG KP KR KZ LK LR LS LT LU LV MA MD MG MK MW MX MZ NO NZ OM PH PL PT RO SD SE SG SI SK SL TJ TM TN TR TT UA UG US UZ VN YU ZA ZM

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): GH GM KE LS MW MZ SD SL SZ UG ZM ZW AM AZ BY KG KZ RU TJ TM AT BE CH CY DE DK FI FR GB GR IE IT LU MC NL PT SE TR BF BJ CF CG CI CM GA GN GQ ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 69(1) EPC - NON-FILING OF TRANSLATION AND WRITTEN REQUESTFOR EXAMINATION - NON-PAYMENT OF THE NATIO

122 Ep: pct application non-entry in european phase