JP2018041215A - Information processing device, and information processing method - Google Patents

Information processing device, and information processing method Download PDF

Info

Publication number
JP2018041215A
JP2018041215A JP2016173830A JP2016173830A JP2018041215A JP 2018041215 A JP2018041215 A JP 2018041215A JP 2016173830 A JP2016173830 A JP 2016173830A JP 2016173830 A JP2016173830 A JP 2016173830A JP 2018041215 A JP2018041215 A JP 2018041215A
Authority
JP
Japan
Prior art keywords
data
unit
cache
read
temporary storage
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2016173830A
Other languages
Japanese (ja)
Other versions
JP6402432B2 (en
Inventor
裕揮 菅野
Hiroki Sugano
裕揮 菅野
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.)
Axell Corp
Original Assignee
Axell 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 Axell Corp filed Critical Axell Corp
Priority to JP2016173830A priority Critical patent/JP6402432B2/en
Priority to TW106122258A priority patent/TWI673611B/en
Publication of JP2018041215A publication Critical patent/JP2018041215A/en
Application granted granted Critical
Publication of JP6402432B2 publication Critical patent/JP6402432B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

PROBLEM TO BE SOLVED: To avoid causing only specific data to occupy a temporary storage part among various data types of data relating to a request source of read data.SOLUTION: A data processing processor 10 sets a cache ID corresponding to a processing part in which an interface control part 26 requests necessity information and read-out of cache control related to read-out data. A memory controller 46 of an auxiliary storage device 40 performs control so as to select a temporary storage area of a temporary storage part 44 for temporarily storing data read out from the auxiliary storage device 40 on the basis of the necessity information of the cache control and the cache ID included in a read command from the data processing processor 10.SELECTED DRAWING: Figure 1

Description

本発明は、ライフタイム及びデータサイズが異なる複数種類のデータを扱うのに好適な情報処理装置及び情報処理方法に関する。   The present invention relates to an information processing apparatus and an information processing method suitable for handling a plurality of types of data having different lifetimes and data sizes.

パチンコ機やパチスロ機等の遊技機においては、静止画や動画の画像、スピーカーからの音、LEDによる発光等により、遊技中の遊技者に対して、多彩な演出を提供することにより、高い遊興感を味わえるように緻密に構成されている。   In gaming machines such as pachinko machines and pachislot machines, a high level of entertainment can be achieved by providing a variety of effects to players in the game, such as still images, video images, sound from speakers, and light emission by LEDs. It is precisely configured to give you a feeling.

遊技中のこれらの画像、音、光の出力は、それらの出力のためのデータを予め遊技機内に格納しておき、遊技の際、遊技の進行に応じて、それらのデータを読み出してきて、所定のデータ変換により画像、光、音として出力することにより行われている。更に詳細には、それらの画像データ、音声データ、及び発光データは、遊技機の製造時に、読み出し専用メモリに圧縮符号化して書き込んでおき、遊技の際には、それらのデータを専用で処理するプロセッサが、随時、その読み出し専用メモリから読み出して復号して、データに応じて液晶表示器、スピーカー、LED(Light Emitting Diode)等に出力するようにしている。   The output of these images, sounds, and light during the game is stored in advance in the gaming machine for the output of those images, and during the game, the data is read out according to the progress of the game, It is performed by outputting as an image, light, and sound by predetermined data conversion. More specifically, the image data, sound data, and light emission data are compressed and written in a read-only memory at the time of manufacture of the gaming machine, and these data are processed exclusively during the game. The processor reads from the read-only memory and decodes it as needed, and outputs it to a liquid crystal display, a speaker, an LED (Light Emitting Diode) or the like according to the data.

ところで、上記の専用のデータ処理プロセッサが、読み出し専用メモリから所望のデータを読み出す際においては、特に遊技機にあっては液晶表示器等への多彩で変化の激しい出力要求に応ずべく、高速に読み出せることが要求される。従って、この読み出し専用メモリからのデータの読み出しにおいても、キャッシュの技術を採用することが多い。具体的には、読み出し専用メモリにおいて、画像データ、音声データ、及び発光データを格納する主たるメモリ(典型的にはフラッシュメモリ)に加えて、キャッシュ(リードキャッシュ)として機能させるメモリ(例えば、DRAM(Dynamic Random Access Memory))を備え、キャッシュ機能を実現している。   By the way, when the above-mentioned dedicated data processor reads out desired data from the read-only memory, especially in the case of gaming machines, in order to respond to various and rapidly changing output requests to the liquid crystal display, etc. It must be readable. Therefore, the cache technology is often employed for reading data from the read-only memory. Specifically, in a read-only memory, in addition to a main memory (typically a flash memory) that stores image data, audio data, and light emission data, a memory that functions as a cache (read cache) (for example, DRAM ( Dynamic Random Access Memory)) and realizes the cache function.

特許文献1においては、HDD(8)の前段にキャッシュメモリ(6)がある構成であり、HDD(8)に記録するデータも映像信号と音声信号の2種類の信号であるものの、当該文献に記載の技術の目的は、一纏まり(1ファイル)のサイズがHDD(8)の容量を越えるようなサイズの映像・音声信号であっても、複数のHDD(8)に渡ってうまく記録できるようにすることであり、その目的を達成するための構成は、1ファイルの映像・音声信号を、その映像・音声信号の切り替わり箇所で複数に分割して、その各所で分割可能なファイルに構成する、というものである。
また、特許文献2においては、容量の異なる2つのキャッシュメモリによる階層化の技術と、命令とデータ(オペランド)とでキャッシュを分ける技術とを組み合わせる技術の更なる応用が開示されており、その具体的構成は、オペランドアクセス時及び分岐命令の分岐先命令アクセス時に比較的小容量の第1キャッシュメモリをアクセスし、不在のときに大容量の第2キャッシュメモリにアクセスする、というものである。
また、特許文献3においては、複数のプロセッサで処理する処理において、各プロセッサが時々において自身が担当処理するプロセスがない場合に効率的に低電力モードに切り替わる工夫について開示しており、その前提として、各プロセッサには1対1でキャッシュメモリが備わっている(図1、図5)というものである。
Patent Document 1 has a configuration in which a cache memory (6) is provided in front of the HDD (8), and data to be recorded on the HDD (8) is also two types of signals, a video signal and an audio signal. The purpose of the described technique is to enable video / audio signals having a size (one file) exceeding the capacity of the HDD (8) to be recorded well over a plurality of HDDs (8). The configuration for achieving the object is to divide the video / audio signal of one file into a plurality of parts at the switching points of the video / audio signals, and to configure a file that can be divided at each part. That's it.
Further, Patent Document 2 discloses a further application of a technique that combines a hierarchization technique using two cache memories having different capacities and a technique that separates caches between instructions and data (operands). The basic configuration is to access a relatively small first cache memory when accessing an operand and branch destination instruction of a branch instruction, and accessing a large second cache memory when absent.
In addition, Patent Document 3 discloses a device for efficiently switching to a low power mode when each processor does not have a process that it is responsible for in processing performed by a plurality of processors. Each processor has a one-to-one cache memory (FIGS. 1 and 5).

特開2003−115168公報JP 2003-115168 A 特開昭64−18843号公報JP-A 64-18843 特表2005−531860公報JP-T-2005-53860

しかしながら、上述の画像データ、音声データ、及び発光データのように多種のデータを扱う場合、それらのデータ種別に応じてライフタイム(データが利用される時間長)やデータサイズ(通信データ量単位)が異なることが多く、その場合、基本的にデータサイズが大きい種別のデータが偏ってキャッシュメモリを占めてしまい、必要なデータを所望のタイミングで処理できない状況に陥ることがある。
特に、パチンコ機等の遊技機においては、音声データ及び発光データが画像データと比較して処理の遅延が許容されないにも拘わらず、データサイズの大きい画像データのみがキャッシュメモリを占めてしまうので、音や光の出力が許容量を超えて遅れてしまうといった問題があった。これは、画像データが音声データや発光データよりデータ量が大きいため、キャッシュメモリにおける占有率が高くなり、音声データや発光データのデータがキャッシュメモリにキャッシュされにくく、処理遅延が生じるためである。
本発明は、上記に鑑みてなされたもので、その目的は、リードデータの要求元に関連した各種データのうち、特定のデータのみが一時記憶部を占めてしまうことを回避することにある。
However, when handling various types of data such as the above-mentioned image data, audio data, and light emission data, the lifetime (the length of time the data is used) and the data size (unit of communication data amount) according to the data type However, in this case, the type of data having a large data size basically occupies the cache memory in a biased manner, and a situation may arise where necessary data cannot be processed at a desired timing.
In particular, in a gaming machine such as a pachinko machine, although audio data and light emission data do not allow processing delay compared to image data, only image data with a large data size occupies the cache memory. There was a problem that the output of sound and light was delayed beyond the allowable amount. This is because the amount of image data is larger than that of audio data and light emission data, so that the occupancy rate in the cache memory is high, and the data of audio data and light emission data is not easily cached in the cache memory, resulting in processing delay.
The present invention has been made in view of the above, and an object thereof is to avoid the fact that only specific data occupies a temporary storage unit among various data related to a request source of read data.

上記課題を解決するために、請求項1記載の発明は、複数のデータ種別に対応した複数の種類のデータを記憶する記憶部と、前記記憶部から読み出したデータを一時記憶領域に一時的に記憶する一時記憶部と、前記記憶部、及び前記一時記憶部を制御する制御部と、を備えた補助記憶装置と、上位CPUからの要求に基づいて、前記補助記憶装置から複数の種類のデータを読み出し、所定の処理部にデータを出力するデータ処理プロセッサと、を備えた情報処理装置であって、前記データ処理プロセッサは、読み出しデータに係るキャッシュ制御の要否情報及び読み出し要求する処理部に応じたキャッシュIDを設定するインターフェース制御部を備え、前記補助記憶装置の制御部は、前記データ処理プロセッサからのリードコマンドに含まれる前記キャッシュ制御の要否情報及びキャッシュIDに基づいて前記補助記憶装置から読み出したデータを一時的に記憶する一時記憶部の一時記憶領域を選択するように制御したことを特徴とする。   In order to solve the above problems, the invention described in claim 1 is characterized in that a storage unit that stores a plurality of types of data corresponding to a plurality of data types, and data read from the storage unit are temporarily stored in a temporary storage area. A plurality of types of data from the auxiliary storage device based on a request from an auxiliary storage device having a temporary storage unit to store, the storage unit, and a control unit for controlling the temporary storage unit, and a host CPU And a data processing processor that outputs data to a predetermined processing unit, wherein the data processing processor includes a cache control necessity information related to the read data and a processing unit that requests reading. An interface control unit for setting a corresponding cache ID, and the control unit of the auxiliary storage device is included in the read command from the data processor Characterized in that said control was to select a temporary storage area of the temporary storage unit for temporarily storing data read from said auxiliary storage device based on the requirement information and the cache ID of the cache control that.

本発明によれば、リードデータの要求元に関連した各種データのうち、特定のデータのみが一時記憶部を占めてしまうことを回避することができる。   ADVANTAGE OF THE INVENTION According to this invention, it can avoid that only specific data will occupy a temporary memory part among the various data relevant to the request origin of read data.

本発明の一実施形態に係る情報処理装置の構成を説明するための機能ブロック図である。It is a functional block diagram for demonstrating the structure of the information processing apparatus which concerns on one Embodiment of this invention. 本発明の一実施形態に係るデータ処理プロセッサに設けられたインターフェース制御部の構成を説明するための機能ブロック図である。It is a functional block diagram for demonstrating the structure of the interface control part provided in the data processor which concerns on one Embodiment of this invention. (a)は一般的なSATA規格のリードコマンドパケットの構成を示す図、(b)は本発明に係るインターフェース制御部で生成する改良されたSATA規格のリードコマンドパケットの構成を示す図、(c)は改良されたSATA規格のリードコマンドパケットにおけるCCHIDの定義を示す図である。(A) is a diagram showing a configuration of a general SATA standard read command packet, (b) is a diagram showing a configuration of an improved SATA standard read command packet generated by the interface control unit according to the present invention, (c) ) Is a diagram showing the definition of CCHID in the read command packet of the improved SATA standard. 本発明の一実施形態に係る補助記憶装置に設けられた領域制御部の構成を説明するための機能ブロック図である。It is a functional block diagram for demonstrating the structure of the area | region control part provided in the auxiliary storage device which concerns on one Embodiment of this invention. 本発明の一実施形態に係るデータ処理プロセッサに設けられたインターフェース制御部の動作について説明するためのフローチャートである。It is a flowchart for demonstrating operation | movement of the interface control part provided in the data processor which concerns on one Embodiment of this invention. 本発明の一実施形態に係る補助記憶装置に設けられた領域制御部の動作について説明するためのフローチャートである。It is a flowchart for demonstrating operation | movement of the area | region control part provided in the auxiliary storage device which concerns on one Embodiment of this invention.

以下、本発明を図面に示した実施の形態により詳細に説明する。
本発明は、リードデータの要求元に関連した各種データのうち、特定のデータのみが一時記憶部を占めてしまうことを回避するために、以下の構成を有する。
すなわち、本発明の情報処理装置は、複数のデータ種別に対応した複数の種類のデータを記憶する記憶部と、記憶部から読み出したデータを一時記憶領域に一時的に記憶する一時記憶部と、記憶部、及び一時記憶部を制御する制御部と、を備えた補助記憶装置と、上位CPUからの要求に基づいて、補助記憶装置から複数の種類のデータを読み出し、所定の処理部にデータを出力するデータ処理プロセッサと、を備えた情報処理装置であって、データ処理プロセッサは、読み出しデータに係るキャッシュ制御の要否情報及び読み出し要求する処理部に応じたキャッシュIDを設定するインターフェース制御部を備え、補助記憶装置の制御部は、データ処理プロセッサからのリードコマンドに含まれるキャッシュ制御の要否情報及びキャッシュIDに基づいて補助記憶装置から読み出したデータを一時的に記憶する一時記憶部の一時記憶領域を選択するように制御したことを特徴とする。
以上の構成を備えることにより、リードデータの要求元に関連した各種データのうち、特定のデータのみが一時記憶部を占めてしまうことを回避することができる。
上記の本発明の特徴に関して、以下、図面を用いて詳細に説明する。
Hereinafter, the present invention will be described in detail with reference to embodiments shown in the drawings.
The present invention has the following configuration in order to prevent only specific data from occupying a temporary storage unit among various data related to a request source of read data.
That is, the information processing apparatus of the present invention includes a storage unit that stores a plurality of types of data corresponding to a plurality of data types, a temporary storage unit that temporarily stores data read from the storage unit in a temporary storage area, A plurality of types of data are read from the auxiliary storage device based on a request from the upper CPU and an auxiliary storage device including a storage unit and a control unit that controls the temporary storage unit, and the data is stored in a predetermined processing unit. An information processing apparatus including an interface control unit that sets cache control necessity information related to read data and a cache ID corresponding to the processing unit that requests the read. The auxiliary storage device includes a cache control necessity information included in the read command from the data processor and a cache Wherein the control was to select a temporary storage area of the temporary storage unit for temporarily storing data read from the auxiliary storage device based on D.
By providing the above configuration, it is possible to prevent only specific data from occupying the temporary storage unit among various data related to the request source of the read data.
Hereinafter, the features of the present invention will be described in detail with reference to the drawings.

<情報処理装置>
図1を参照して、本発明の一実施形態に係る情報処理装置の構成について説明する。図1は、本発明の一実施形態に係る情報処理装置の構成を説明するための機能ブロック図である。
情報処理装置1は、データ処理プロセッサ10、補助記憶装置40、を備えている。
図1に示す上位CPU2は、遊技機等を構成する情報処理装置1に対して上位に配置されたCPUである。
データ処理プロセッサ10は、画像、音声、発光等のデータを処理するプロセッサであり、CPU12、画像処理部14、表示出力部16、サウンド処理部18、サウンド出力部20、発光処理部22、発光出力部24、インターフェース制御部26、バス28を備えている。
<Information processing device>
With reference to FIG. 1, the structure of the information processing apparatus which concerns on one Embodiment of this invention is demonstrated. FIG. 1 is a functional block diagram for explaining the configuration of an information processing apparatus according to an embodiment of the present invention.
The information processing apparatus 1 includes a data processor 10 and an auxiliary storage device 40.
A high-order CPU 2 shown in FIG. 1 is a CPU arranged at a high level with respect to the information processing apparatus 1 constituting a gaming machine or the like.
The data processor 10 is a processor that processes data such as images, sound, and light emission, and includes a CPU 12, an image processing unit 14, a display output unit 16, a sound processing unit 18, a sound output unit 20, a light emission processing unit 22, and a light emission output. Unit 24, interface control unit 26, and bus 28.

CPU12は、データ処理プロセッサの全体を制御する。
画像処理部14は、表示すべき画像を処理するものであり、補助記憶装置40に格納されたデータを取得して復号し、画像として描画することで画像データを生成する。
表示出力部16は、画像処理部14が生成した画像データをディスプレイ30等の表示部に出力する。ディスプレイ30は、LCD等の表示デバイスである。
サウンド処理部18は、出力すべき音声信号を処理するものであり、補助記憶装置40に格納されたデータを取得して復号し、サウンドデータを生成する。
サウンド出力部20は、生成されたサウンドデータに基づき、スピーカー32等に音声信号を出力する。
The CPU 12 controls the entire data processor.
The image processing unit 14 processes an image to be displayed, acquires data stored in the auxiliary storage device 40, decodes it, and draws it as an image to generate image data.
The display output unit 16 outputs the image data generated by the image processing unit 14 to a display unit such as the display 30. The display 30 is a display device such as an LCD.
The sound processing unit 18 processes an audio signal to be output, and acquires and decodes data stored in the auxiliary storage device 40 to generate sound data.
The sound output unit 20 outputs an audio signal to the speaker 32 or the like based on the generated sound data.

発光処理部22は、演出に基づき、補助記憶装置40に格納されたデータを復号して、LED34等の発光体を駆動するためのデータを生成する。
発光出力部24は、発光処理部が生成したデータに基づき、LED等の発光体を駆動する。
LED(light emitting diode)34は、順方向に電圧を加えた際に発光する半導体素子であり、発光体の一例である。
インターフェース制御部26は、補助記憶装置40との間のインターフェースを制御するもので、画像処理部14、サウンド処理部18、発光処理部22、その他(CPU)のいずれか1つが要求するリードリクエストがどの処理部またはCPUから行われたものかを判別し、判別結果に応じてリードリクエストであるリードコマンドに含ませるセクターカウント値(Sector Count)及びキャッシュIDを設定する。
The light emission processing unit 22 decodes the data stored in the auxiliary storage device 40 based on the effect, and generates data for driving the light emitter such as the LED 34.
The light emission output unit 24 drives a light emitter such as an LED based on the data generated by the light emission processing unit.
An LED (light emitting diode) 34 is a semiconductor element that emits light when a voltage is applied in the forward direction, and is an example of a light emitter.
The interface control unit 26 controls an interface with the auxiliary storage device 40, and a read request requested by any one of the image processing unit 14, the sound processing unit 18, the light emission processing unit 22, and the other (CPU) is made. It is determined which processing unit or CPU has been used, and a sector count value (Sector Count) and a cache ID to be included in a read command that is a read request are set according to the determination result.

補助記憶装置40は、記憶部(フラッシュメモリ)42、一時記憶部(DRAM)44、メモリコントローラ46、バス48を備えている。
補助記憶装置40は、いわゆるNANDフラッシュメモリを含むSSD(Solid State Drive)である。ただし、通常のSSDでは一時記憶部44が書き込み用のキャッシュメモリとして用いられるが、本発明において用いるSSDはSSDのファームウェアを変更し、一時記憶部44を読み出し用のキャッシュメモリとして利用している。なお、書き込み用に利用されるDRAMを読み出し用に変更せず、読み出し用として別途DRAMを用意しても良い。
記憶部42は、例えば、NANDフラッシュメモリアレイからなる記憶部である。
一時記憶部44は、例えば、DDR DRAMからなる一時記憶部であって、読み出しデータをキャッシュする。
The auxiliary storage device 40 includes a storage unit (flash memory) 42, a temporary storage unit (DRAM) 44, a memory controller 46, and a bus 48.
The auxiliary storage device 40 is an SSD (Solid State Drive) including a so-called NAND flash memory. However, in a normal SSD, the temporary storage unit 44 is used as a cache memory for writing. However, the SSD used in the present invention changes the firmware of the SSD and uses the temporary storage unit 44 as a cache memory for reading. The DRAM used for writing may not be changed for reading, but a DRAM may be separately prepared for reading.
The storage unit 42 is a storage unit made up of, for example, a NAND flash memory array.
The temporary storage unit 44 is a temporary storage unit composed of, for example, a DDR DRAM, and caches read data.

メモリコントローラ46は、全体制御部50、シーケンス制御部52、ECC(Error Check and Correct)制御部54、ホストI/F制御部56、メモリI/F制御部58、領域制御部60を備え、補助記憶装置40を制御する。
全体制御部50は、RAM、ROM等を内蔵し(図示省略)、メモリコントローラ46全体を制御する。
シーケンス制御部52は、メモリコントローラ46から記憶部42に与えられる内部コマンド信号に基づき、記憶部42の動作を制御する。
ECC制御部54は、読み出しデータに付加されたエラーコレクションコードに基づき、読み出したデータに含まれる誤りを検出し、且つ誤りを検出した場合に当該データの誤りを訂正する。
ホストI/F制御部56は、ホスト(データ処理プロセッサ)との間のインターフェースを制御する。
メモリI/F制御部58は、記憶部42であるNANDアレイや一時記憶部44であるDRAM等とのインターフェースを制御する。
領域制御部60は、データ処理プロセッサ10から指定されるキャッシュIDに基づき、記憶部42から読み出したデータを一時記憶部44の指定された一時記憶領域に格納する。
なお、メモリコントローラ46の各構成は、メモリコントローラ46のマイクロプロセッサにより実現する。
また、バス28とバス48との接続は、シリアル高速通信バスや、PCIe(PCIエクスプレス)等を利用することができ、各バス28、48は説明を簡単にするためデータバス及びレジスタバスを区別せずに記載している。
The memory controller 46 includes an overall control unit 50, a sequence control unit 52, an ECC (Error Check and Correct) control unit 54, a host I / F control unit 56, a memory I / F control unit 58, and an area control unit 60. The storage device 40 is controlled.
The overall control unit 50 includes a RAM, a ROM, and the like (not shown) and controls the entire memory controller 46.
The sequence control unit 52 controls the operation of the storage unit 42 based on an internal command signal given from the memory controller 46 to the storage unit 42.
The ECC control unit 54 detects an error included in the read data based on the error collection code added to the read data, and corrects the error of the data when an error is detected.
The host I / F control unit 56 controls an interface with the host (data processing processor).
The memory I / F control unit 58 controls an interface with a NAND array that is the storage unit 42, a DRAM that is the temporary storage unit 44, or the like.
The area control unit 60 stores the data read from the storage unit 42 in the specified temporary storage area of the temporary storage unit 44 based on the cache ID specified by the data processor 10.
Each configuration of the memory controller 46 is realized by the microprocessor of the memory controller 46.
The bus 28 and the bus 48 can be connected to each other using a serial high-speed communication bus, PCIe (PCI express), or the like. The buses 28 and 48 are distinguished from each other for the sake of simplicity. It is described without.

<インターフェース制御部>
図2を参照して、図1に示すインターフェース制御部の機能ブロックの構成について説明する。図2は、本発明の一実施形態に係るデータ処理プロセッサに設けられたインターフェース制御部の構成を説明するための機能ブロック図である。
インターフェース制御部26は、要求データ量判定部26a、セクターカウント設定部26b、データ要求元/キャッシュ要否判定部26c、キャッシュID設定部26d、修正リードコマンド生成部26e、修正リードコマンド出力部26f、を備えている。
要求データ量判定部26aは、データ処理プロセッサ10に設けられた画像処理部14、サウンド処理部18、発光処理部22、CPU12の何れか1つから出力されるリードリクエストをバスから受け取った際、記憶部42から何セクター分のデータを読み出せば良いかを判定する。
セクターカウント設定部26bは、要求データ量判定部26aにて判定したセクター数に応じてセクターカウント値を設定する。
例えば、SATAの規格によれば、最少のデータ読み出し単位は512バイトであり、リードコマンドで要求された読み出しデータ量が512バイト以下であり、かつ単一のセクター内に納まる場合には、要求データ量判定部はセクター数1と判定し、セクターカウント設定部26bにてセクターカウント値1を設定する。
また、リードコマンドで要求された読み出しデータ量が512バイト以下であっても、その要求されたデータが複数のセクターに跨って格納されている場合には、要求データ量判定部はセクター数2と判定し、セクターカウント設定部26bにてセクターカウント値2を設定する。
同様に、リードコマンドで要求された読み出しデータ量が、例えば、900バイトの場合、その要求されたデータが2つのセクター内に納まっている場合には、要求データ量判定部はセクター数2と判定し、セクターカウント設定部26bにてセクターカウント値2を設定するが、3つのセクターに跨って格納されている場合には、要求データ量判定部はセクター数3と判定し、セクターカウント設定部26bにてセクターカウント値3を設定する。
<Interface control unit>
With reference to FIG. 2, the functional block configuration of the interface control unit shown in FIG. 1 will be described. FIG. 2 is a functional block diagram for explaining the configuration of the interface control unit provided in the data processor according to the embodiment of the present invention.
The interface control unit 26 includes a requested data amount determination unit 26a, a sector count setting unit 26b, a data request source / cache necessity determination unit 26c, a cache ID setting unit 26d, a modified read command generation unit 26e, a modified read command output unit 26f, It has.
When the request data amount determination unit 26a receives a read request from any one of the image processing unit 14, the sound processing unit 18, the light emission processing unit 22, and the CPU 12 provided in the data processor 10, from the bus, It is determined how many sectors of data should be read from the storage unit 42.
The sector count setting unit 26b sets the sector count value according to the number of sectors determined by the requested data amount determination unit 26a.
For example, according to the SATA standard, the minimum data read unit is 512 bytes, the read data amount requested by the read command is 512 bytes or less, and the requested data is stored in a single sector. The amount determination unit determines that the number of sectors is 1, and sets the sector count value 1 in the sector count setting unit 26b.
In addition, even if the read data amount requested by the read command is 512 bytes or less, if the requested data is stored across a plurality of sectors, the requested data amount determination unit has two sectors. The sector count setting unit 26b sets the sector count value 2.
Similarly, when the read data amount requested by the read command is, for example, 900 bytes, the requested data amount determination unit determines that the number of sectors is 2 when the requested data is contained in two sectors. Then, the sector count setting unit 26b sets the sector count value 2, but when the data is stored across three sectors, the requested data amount determination unit determines that the number of sectors is 3, and the sector count setting unit 26b The sector count value 3 is set at.

要求元/キャッシュ要否判定部26cは、データ処理プロセッサ10に設けられた画像処理部14、サウンド処理部18、発光処理部22、CPU12の何れか1つから出力されるリードリクエストをバスから受け取った際、リードリクエストに含まれる情報によりどの処理部からのリクエストであるか及びキャッシュ制御を要求しているか否かを判定する。
キャッシュID設定部26dは要求元/キャッシュ要否判定部26cの判定結果に基づき、リードコマンドにキャッシュID(領域設定情報)を設定する。例えば、キャッシュ制御が必要な場合、表1に示すように、リードリクエストの要求元とキャッシュIDとを対応付けておき、リードリクエストの要求元に応じて読み出したデータを格納するキャッシュIDを指定する。
The request source / cache necessity determination unit 26c receives from the bus a read request output from any one of the image processing unit 14, the sound processing unit 18, the light emission processing unit 22, and the CPU 12 provided in the data processor 10. At this time, it is determined from which processing unit the request is made and whether cache control is requested or not based on information included in the read request.
The cache ID setting unit 26d sets a cache ID (region setting information) in the read command based on the determination result of the request source / cache necessity determination unit 26c. For example, when cache control is required, as shown in Table 1, the request source of the read request is associated with the cache ID, and the cache ID for storing the read data according to the request source of the read request is designated. .

Figure 2018041215
Figure 2018041215

修正リードコマンド生成部26eは、セクターカウント設定部26bで設定したセクターカウント値とキャッシュID設定部26dで設定したキャッシュIDとをリードコマンドに含め、修正した修正リードコマンドを生成する。
修正リードコマンド出力部26fは、データ処理プロセッサ10の画像処理部14、サウンド処理部18、発光処理部22、CPU12から発行されたリードリクエストと修正リードコマンド生成部26dで決定したセクターカウント値及びキャッシュIDをSATA規格のコマンドパケット(FIS:Frame Information Structure)として生成し、リードコマンドとして補助記憶装置40へ出力する。
図3(a)は一般的なSATA規格のリードコマンドパケットの構成を示す図、図3(b)は本発明に係るインターフェース制御部26で生成する改良されたSATA規格のリードコマンドパケットの構成を示す図、図3(c)は改良されたSATA規格のリードコマンドパケットにおけるCCHID(Cashe ID:キャッシュID)の定義を示す図である。
本発明に係るインターフェース制御部26の修正リードコマンド生成部26eでは図3(a)に示す従来の一般的なコマンドパケットに代えて、図3(b)に示すようにCountの13ビット〜11ビットをキャッシュIDを表すレジスタとして定義すると共に、当該レジスタにキャッシュID或いはキャッシュ制御なしのデータを格納すると共に、リクエストするデータに応じたセクターカウントをコマンドパケットのフィーチャーズ(Features)に割り当てられたレジスタに設定する。また、画像処理部14、サウンド処理部18、発光処理部22、CPU12から発行されたリードリクエストはコマンドパケットのLBAに割り当てられたレジスタに格納される。
The corrected read command generation unit 26e includes the sector count value set by the sector count setting unit 26b and the cache ID set by the cache ID setting unit 26d in the read command, and generates a corrected read command.
The modified read command output unit 26f includes the image processing unit 14, the sound processing unit 18, the light emission processing unit 22, the read request issued from the CPU 12, the sector count value determined by the modified read command generation unit 26d, and the cache. The ID is generated as a SATA standard command packet (FIS: Frame Information Structure) and output to the auxiliary storage device 40 as a read command.
FIG. 3A is a diagram showing a configuration of a general SATA standard read command packet, and FIG. 3B is a diagram showing an improved SATA standard read command packet configuration generated by the interface control unit 26 according to the present invention. FIG. 3C is a diagram showing the definition of CCHID (Cash ID: Cache ID) in the read command packet of the improved SATA standard.
In the modified read command generation unit 26e of the interface control unit 26 according to the present invention, instead of the conventional general command packet shown in FIG. 3A, the 13 bits to 11 bits of Count as shown in FIG. 3B. Is defined as a register representing the cache ID, the cache ID or data without cache control is stored in the register, and the sector count corresponding to the requested data is stored in the register assigned to the feature (Features) of the command packet. Set. The read request issued from the image processing unit 14, the sound processing unit 18, the light emission processing unit 22, and the CPU 12 is stored in a register assigned to the LBA of the command packet.

<領域制御部>
図4を参照して、図1に示す領域制御部の機能ブロックの構成について説明する。図4は、本発明の一実施形態に係る補助記憶装置に設けられた領域制御部の構成を説明するための機能ブロック図である。
領域制御部60は、一時記憶部領域設定部60a、キャッシュ制御部60b、一時記憶部書込み制御部60c、を備えている。
一時記憶部領域設定部60aは、一時記憶部44に読み出しデータを書き込みする際の一時記憶領域を設定するものであり、例えば、一時記憶部44を4つの一時記憶領域に分ける場合には、キャッシュID0〜3及び各キャッシュIDの領域を設定し、一時記憶部書き込み制御部60cに設定値を供給するものである。領域設定は任意に行うことができ、例えば、表2に示すようにキャッシュIDに対応してDRAMの領域(容量)を設定する。なお、表2は一時記憶部44の容量が2GB、キャッシュする一時記憶領域を4つとした場合の一例であり、図3(b)及び図3(c)に示したようにCCHIDとして3ビットを割り当てると、キャッシュIDには8種類を設定可能であり、また一時記憶部44の容量に応じて設定領域は任意に設定可能である。
<Area control unit>
With reference to FIG. 4, the structure of the functional blocks of the area control unit shown in FIG. 1 will be described. FIG. 4 is a functional block diagram for explaining the configuration of the area control unit provided in the auxiliary storage device according to the embodiment of the present invention.
The area control unit 60 includes a temporary storage unit area setting unit 60a, a cache control unit 60b, and a temporary storage unit write control unit 60c.
The temporary storage unit setting unit 60a sets a temporary storage region for writing read data to the temporary storage unit 44. For example, when the temporary storage unit 44 is divided into four temporary storage regions, a cache is used. The areas for ID 0 to 3 and each cache ID are set, and the set value is supplied to the temporary storage unit write control unit 60c. The area can be arbitrarily set. For example, as shown in Table 2, a DRAM area (capacity) is set corresponding to the cache ID. Table 2 shows an example in which the temporary storage unit 44 has a capacity of 2 GB and caches four temporary storage areas. As shown in FIGS. 3B and 3C, 3 bits are used as CCHID. When assigned, eight types of cache IDs can be set, and the setting area can be arbitrarily set according to the capacity of the temporary storage unit 44.

Figure 2018041215
Figure 2018041215

キャッシュ制御部60bは、キャッシュID判定部60d、キャッシュ要否判定部60eを含み、キャッシュID判定部60d及びキャッシュ要否判定部60eはデータ処理プロセッサ10から受領したリードリクエストコマンドに含まれるCCHIDのレジスタ値からキャッシュIDまたはキャッシュ要否を判定し、キャッシュ情報(キャッシュ要否及びキャッシュID)を一時記憶部書き込み制御部60cに出力する。
一時記憶部書き込み制御部60cは、キャッシュ制御部60bより供給されるキャッシュ情報に基づき、記憶部42からの読み出しデータを一時記憶部44の所定のキャッシュIDに対応した一時記憶領域に書き込む。
The cache control unit 60b includes a cache ID determination unit 60d and a cache necessity determination unit 60e. The cache ID determination unit 60d and the cache necessity determination unit 60e are registers of CCHID included in the read request command received from the data processor 10. The cache ID or cache necessity is determined from the value, and the cache information (cache necessity and cache ID) is output to the temporary storage unit write control unit 60c.
The temporary storage unit write control unit 60c writes the read data from the storage unit 42 in a temporary storage area corresponding to a predetermined cache ID in the temporary storage unit 44 based on the cache information supplied from the cache control unit 60b.

なお、領域制御部60は、メモリコントローラ46に含まれるマイクロプロセッサにより実現するものであり、全体制御部50やシーケンス制御部52と協働し、データ処理プロセッサ10から受け付けたコマンドパケットに含まれるLBAのレジスタ値により、メモリコントローラ46は記憶部42の指定されたアドレスからデータを読み出すと共に、上記キャッシュ情報に基づいて読み出しデータを一時記憶部44の指定されたキャッシュIDに対応した一時記憶領域に書き込んだり、或いはキャッシュせずに読み出しデータをデータ処理プロセッサ10に出力したりする。   Note that the area control unit 60 is realized by a microprocessor included in the memory controller 46, and cooperates with the overall control unit 50 and the sequence control unit 52, and the LBA included in the command packet received from the data processor 10. With this register value, the memory controller 46 reads the data from the specified address of the storage unit 42 and writes the read data to the temporary storage area corresponding to the specified cache ID of the temporary storage unit 44 based on the cache information. Or the read data is output to the data processor 10 without caching.

<インターフェース制御部の動作フロー>
図5を参照して、図2に示すインターフェース制御部の動作フローについて説明する。図5は、本発明の一実施形態に係るデータ処理プロセッサに設けられたインターフェース制御部の動作について説明するためのフローチャートである。
ステップS5では、要求データ量判定部26a及び要求元/キャッシュ要否判定部26cは、画像処理部14やサウンド処理部18等からのリードリクエストを含むコマンド(リードコマンド)を受け付けたか否かを判定する。リードコマンドを受け付けた場合、ステップS10及びS15に進む。
<Operation flow of interface controller>
The operation flow of the interface control unit shown in FIG. 2 will be described with reference to FIG. FIG. 5 is a flowchart for explaining the operation of the interface control unit provided in the data processor according to the embodiment of the present invention.
In step S5, the request data amount determination unit 26a and the request source / cache necessity determination unit 26c determine whether or not a command (read command) including a read request from the image processing unit 14, the sound processing unit 18, or the like has been received. To do. If a read command is accepted, the process proceeds to steps S10 and S15.

ステップS10では、要求データ量判定部26aは、要求された読み出しデータ量に基づき、記憶部42から何セクター分のデータを読み出せば良いかを判定し、セクターカウント設定部26bにてセクターカウント値を設定する。
例えば、SATAの規格によれば、最少のデータ読み出し単位は512バイトであり、リードコマンドで要求された読出しデータ量が512バイト以下であり、かつ単一のセクター内に納まる場合には、要求データ量判定部26aはセクター数1と判定し、セクターカウント設定部26bにてセクターカウント値1を設定する。
また、リードコマンドで要求された読出しデータ量が512バイト以下であっても、その要求されたデータが複数のセクターに跨って格納されている場合には、要求データ量判定部26aはセクター数2と判定し、セクターカウント設定部26bにてセクターカウント値2を設定する。
同様に、リードコマンドで要求された読出しデータ量が、例えば、900バイトである場合、その要求されたデータが2つのセクター内に納まっている場合には、要求データ量判定部26aはセクター数2と判定し、セクターカウント設定部26bにてセクターカウント値2を設定するが、3つのセクターに跨って格納されている場合には、要求データ量判定部26aはセクター数3と判定し、セクターカウント設定部26bにてセクターカウント値3を設定する。
In step S10, the requested data amount determination unit 26a determines how many sectors of data should be read from the storage unit 42 based on the requested read data amount, and the sector count setting unit 26b determines the sector count value. Set.
For example, according to the SATA standard, the minimum data read unit is 512 bytes, the read data amount requested by the read command is 512 bytes or less, and the requested data is stored in a single sector. The amount determination unit 26a determines that the number of sectors is 1, and sets the sector count value 1 in the sector count setting unit 26b.
In addition, even if the read data amount requested by the read command is 512 bytes or less, if the requested data is stored across a plurality of sectors, the requested data amount determination unit 26a has 2 sectors. And the sector count setting unit 26b sets the sector count value 2.
Similarly, if the read data amount requested by the read command is, for example, 900 bytes, and if the requested data is contained in two sectors, the requested data amount determination unit 26a determines that the number of sectors is 2 The sector count setting unit 26b sets the sector count value 2, but when the data is stored across three sectors, the requested data amount determination unit 26a determines that the number of sectors is 3, and determines the sector count. The sector count value 3 is set by the setting unit 26b.

要求元/キャッシュ要否判定部26はステップS15にてキャッシュ制御が必要か否かを判断し、キャッシュ制御が要求されていないリードリクエストの場合(ステップS15でNO)、“キャッシュ制御なし”のレジスタ値を設定する(ステップS20)。
例えば、要求元/キャッシュ要否判定部26は、キャッシュ制御が要求されていないリードリクエストである場合、キャッシュ制御なしのレジスタ値として111dを設定する。
一方、キャッシュ制御が要求されているリードリクエストの場合(ステップS15でYES)、要求元/キャッシュ要否判定部26はステップS30にてリードリクエスト要求元を判定する。
ここで、要求元/キャッシュ要否判定部26cは、データ処理プロセッサ10に設けられた画像処理部14、サウンド処理部18、発光処理部22、CPU12の何れか1つから出力されるリードリクエストをバスから受け取った際にどの処理部からのリクエストであるかを判定する。
The request source / cache necessity determination unit 26 determines whether or not cache control is necessary in step S15. If the request is a read request for which cache control is not requested (NO in step S15), a “no cache control” register. A value is set (step S20).
For example, in the case of a read request for which cache control is not requested, the request source / cache necessity determination unit 26 sets 111d as a register value without cache control.
On the other hand, in the case of a read request for which cache control is requested (YES in step S15), the request source / cache necessity determination unit 26 determines the read request request source in step S30.
Here, the request source / cache necessity determination unit 26 c receives a read request output from any one of the image processing unit 14, the sound processing unit 18, the light emission processing unit 22, and the CPU 12 provided in the data processor 10. When receiving from the bus, it is determined from which processing unit the request is received.

リードリクエストの要求元に応じ、キャッシュID設定部26dは予め設定されたキャッシュIDを割り当て(ステップS41〜ステップS44)、修正リードコマンド生成部26eにレジスタ値を出力する。
なお、本実施形態では表1に示したリードリクエストの要求元とキャッシュIDとの関係でフローを記載している。
すなわち、画像処理部14がリードリクエストを要求した場合(ステップS41)に、キャッシュID設定部26dはキャッシュID=1のレジスタ値を修正リードコマンド生成部26eに出力する。
また、サウンド処理部18がリードリクエストを要求した場合(ステップS42)に、キャッシュID設定部26dはキャッシュID=2のレジスタ値を修正リードコマンド生成部26eに出力する。
さらに、発光処理部22がリードリクエストを要求した場合(ステップS43)に、キャッシュID設定部26dはキャッシュID=3のレジスタ値を修正リードコマンド生成部26eに出力する。
また、CPU12がリードリクエストを要求した場合(ステップS44)に、キャッシュID設定部26dはキャッシュID=0のレジスタ値を修正リードコマンド生成部26eに出力する。
In response to the request source of the read request, the cache ID setting unit 26d assigns a preset cache ID (steps S41 to S44), and outputs the register value to the modified read command generation unit 26e.
In the present embodiment, the flow is described based on the relationship between the request source of the read request and the cache ID shown in Table 1.
That is, when the image processing unit 14 requests a read request (step S41), the cache ID setting unit 26d outputs the register value of the cache ID = 1 to the modified read command generation unit 26e.
When the sound processing unit 18 requests a read request (step S42), the cache ID setting unit 26d outputs the register value of the cache ID = 2 to the modified read command generation unit 26e.
Further, when the light emission processing unit 22 requests a read request (step S43), the cache ID setting unit 26d outputs the register value of the cache ID = 3 to the modified read command generation unit 26e.
When the CPU 12 requests a read request (step S44), the cache ID setting unit 26d outputs the register value of the cache ID = 0 to the modified read command generation unit 26e.

その後、修正リードコマンド生成部26eは“キャッシュ制御無し”の場合には“キャッシュ制御なし”を表すデータをコマンドパケットのCCHIDのレジスタ値に設定すると共に、読み出しデータ量に応じたセクターカウント値をフィーチャーズのレジスタに設定し、更に読出すデータのアドレスを含むLBAをレジスタ値に設定し、修正リードコマンドとなるコマンドパケットを生成する(ステップS50)。   Thereafter, in the case of “no cache control”, the modified read command generation unit 26e sets data indicating “no cache control” to the register value of the CCHID of the command packet, and features a sector count value corresponding to the read data amount. The LBA including the address of the data to be read is set as the register value, and a command packet serving as a modified read command is generated (step S50).

また、“キャッシュ制御あり”の場合には、リードリクエストの要求元に応じたキャッシュIDをCCHIDのレジスタ値に設定すると共に、読み出しデータ量に応じたセクターカウント値及び読出すデータのアドレスを含むLBAをレジスタ値に設定し、修正リードコマンドとなるコマンドパケットを生成する(ステップS50)。
修正リードコマンドであるコマンドパケットを生成した後、修正リードコマンド出力部26fは修正リードコマンドを出力する(ステップS60)。
In the case of “with cache control”, the cache ID corresponding to the request source of the read request is set in the register value of CCHID, and the sector count value corresponding to the read data amount and the address of the data to be read are included. Is set as a register value, and a command packet to be a modified read command is generated (step S50).
After generating a command packet that is a corrected read command, the corrected read command output unit 26f outputs the corrected read command (step S60).

<領域制御部の動作フロー>
図6を参照して、領域制御部の動作フローについて説明する。図6は、本発明の一実施形態に係る補助記憶装置40に設けられた領域制御部60の動作について説明するためのフローチャートである。
ステップS105では、領域制御部60は、インターフェース制御部26からリードコマンドを受け付けたか否かを判断し、リードコマンドを受け付けた場合にはステップS110に進む。
<Operation flow of area control unit>
With reference to FIG. 6, the operation flow of the region control unit will be described. FIG. 6 is a flowchart for explaining the operation of the area control unit 60 provided in the auxiliary storage device 40 according to the embodiment of the present invention.
In step S105, the area control unit 60 determines whether a read command has been received from the interface control unit 26. If the read command has been received, the process proceeds to step S110.

キャッシュ制御部60bにおいて、受け付けたリードコマンドであるコマンドパケットのCCHIDとして定義されたレジスタ値を確認する(ステップS110)。
この際、キャッシュ制御部60bに含まれるキャッシュID判定部60dでは、CCHIDのレジスタ値として、000d、001d、010d、011d、111dの何れか1つが確認できる。
キャッシュ制御部60bは、キャッシュ制御の要否及びキャッシュIDを判定する(ステップS115)。
例えば、CCHIDのレジスタ値が000d、001d、010d、011dの何れか1つである場合には“キャッシュ制御あり”を表し、111dである場合には“キャッシュ制御なし”を表す。
キャッシュ制御部60bのキャッシュ要否判定部60eにて“キャッシュ制御なし”と判断した場合(ステップS115でNO)、コマンドパケットに含まれるLBAに基づいてリクエストされたデータを記憶部42から読み出し(ステップS120)、データ処理プロセッサ10に読み出しデータを出力する(ステップS125)。
In the cache control unit 60b, the register value defined as the CCHID of the command packet that is the accepted read command is confirmed (step S110).
At this time, the cache ID determination unit 60d included in the cache control unit 60b can confirm any one of 000d, 001d, 010d, 011d, and 111d as the register value of CCHID.
The cache control unit 60b determines whether cache control is necessary and the cache ID (step S115).
For example, when the register value of CCHID is any one of 000d, 001d, 010d, and 011d, “cache control is present” is indicated, and when the register value is 111d, “no cache control” is indicated.
If the cache necessity determination unit 60e of the cache control unit 60b determines that “no cache control” (NO in step S115), the requested data is read from the storage unit 42 based on the LBA included in the command packet (step S115). In step S120, the read data is output to the data processor 10 (step S125).

一方、ステップS115にてキャッシュ制御部60bのキャッシュ要否判定部60eが“キャッシュ制御あり”と判断した場合(ステップS115でYES)、CCHIDのレジスタ値に対応したキャッシュIDを認識する(ステップS130)。
この際、キャッシュ要否判定部60eでは、CCHIDのレジスタ値が000d、001d、010d、011dのうち何れか1つである場合には、キャッシュIDがそれぞれ0、1、2、3である。
キャッシュ要否判定部60eは、一時記憶部書き込み制御部60cにキャッシュ情報(キャッシュ要否及びキャッシュID)を出力する。
その後、補助記憶装置のメモリコントローラ46はキャッシュ制御部60bが認識したキャッシュIDに相当する一時記憶部44の一時記憶領域にデータがあるか否かを確認する(ステップS135)。
例えば、キャッシュID判定部60dは、キャッシュIDが0である場合に、一時記憶部44のアドレスが00h〜FFFFFFFhの一時記憶領域からデータを読み出し、データがあるか否かを判定する。
一時記憶部44の指定されたキャッシュIDに対応した一時記憶領域にデータがある場合には(ステップS135でYES)、一時記憶部44からデータを読み出し(ステップS140)、データ処理プロセッサ10に読み出しデータを出力する(ステップS125)。
On the other hand, when the cache necessity determination unit 60e of the cache control unit 60b determines that “cache control is present” in step S115 (YES in step S115), the cache ID corresponding to the register value of CCHID is recognized (step S130). .
At this time, in the cache necessity determination unit 60e, when the CCHID register value is any one of 000d, 001d, 010d, and 011d, the cache IDs are 0, 1, 2, and 3, respectively.
The cache necessity determination unit 60e outputs the cache information (cache necessity and cache ID) to the temporary storage unit write control unit 60c.
Thereafter, the memory controller 46 of the auxiliary storage device checks whether or not there is data in the temporary storage area of the temporary storage unit 44 corresponding to the cache ID recognized by the cache control unit 60b (step S135).
For example, when the cache ID is 0, the cache ID determination unit 60d reads data from the temporary storage area in which the address of the temporary storage unit 44 is 00h to FFFFFFFh, and determines whether there is data.
If there is data in the temporary storage area corresponding to the specified cache ID in the temporary storage unit 44 (YES in step S135), the data is read from the temporary storage unit 44 (step S140), and the data read to the data processor 10 is read. Is output (step S125).

一方、キャッシュ制御部60bが認識したキャッシュIDに相当する一時記憶部44の領域にデータが無い場合(ステップS135でNO)、コマンドパケットに含まれるLBAに基づいてリクエストされたデータを記憶部42から読み出し(ステップS145)、指定されたキャッシュIDに相当する一時記憶部44の一時記憶領域に読み出しデータを書き込み(ステップS150)、データ処理プロセッサ10に読み出しデータを出力(転送)する(ステップS125)。
なお、上述したステップS125では、一時記憶部44の一時記憶領域からデータ処理プロセッサ10に読み出しデータを出力(転送)するように構成しているが、データ処理プロセッサ10が一時記憶部44の一時記憶領域からデータを読み出すように構成してもよい。
なお、一時記憶部44(キャッシュ)の一時記憶領域へのデータ書き込みは、割り当てられた一時記憶領域に空きがあれば、空いている一時記憶領域に格納し、空きがなければ最も古いデータを破棄し、そこにキャッシュする(LRUアルゴリズム(Least Recently Used))。また、LFU(Least Frequently Used)アルゴリズムを用いてキャッシュすることも可能である。
On the other hand, when there is no data in the area of the temporary storage unit 44 corresponding to the cache ID recognized by the cache control unit 60b (NO in step S135), the requested data is stored from the storage unit 42 based on the LBA included in the command packet. Read (step S145), write the read data to the temporary storage area of the temporary storage unit 44 corresponding to the designated cache ID (step S150), and output (transfer) the read data to the data processor 10 (step S125).
In step S125 described above, the read data is output (transferred) from the temporary storage area of the temporary storage unit 44 to the data processor 10, but the data processor 10 temporarily stores the data in the temporary storage unit 44. You may comprise so that data may be read from an area | region.
Note that when data is written to the temporary storage area of the temporary storage unit 44 (cache), if the allocated temporary storage area is free, it is stored in the free temporary storage area, and if there is no free space, the oldest data is discarded. And cache there (LRU algorithm (Least Recently Used)). It is also possible to cache using an LFU (Least Frequently Used) algorithm.

本実施形態によれば、データ処理プロセッサ10は、インターフェース制御部26が、読み出し要求する各処理部の要求元を判定し、処理部に応じて一時記憶部44の一時記憶領域を設定するキャッシュIDを生成する。一方、補助記憶装置40のメモリコントローラ46(制御部)は、データ処理プロセッサ10からのリードコマンドに含まれるキャッシュ情報に基づいて、キャッシュ制御の有無及びキャッシュIDを認識し、キャッシュ制御する場合には読み出しデータの一時格納場所である一時記憶領域の所定の一時記憶領域を選択するように制御したので、リードデータの要求元に関連した各種データ(画像データ、音声データ、発光データ、他データ)のうち、特定のデータのみが一時記憶部44を占有してしまうことを回避することができる。   According to the present embodiment, in the data processor 10, the interface control unit 26 determines the request source of each processing unit that requests reading, and sets the temporary storage area of the temporary storage unit 44 according to the processing unit. Is generated. On the other hand, the memory controller 46 (control unit) of the auxiliary storage device 40 recognizes the presence / absence of cache control and the cache ID based on the cache information included in the read command from the data processor 10, and performs cache control. Since control was performed so as to select a predetermined temporary storage area as a temporary storage location of read data, various data (image data, audio data, light emission data, other data) related to the request source of the read data Of these, it can be avoided that only specific data occupies the temporary storage unit 44.

<本発明の実施態様例の構成、作用、効果>
<第1態様>
本態様の情報処理装置1は、複数のデータ種別に対応した複数の種類のデータを記憶する記憶部42と、記憶部42から読み出したデータを一時記憶領域に一時的に記憶する一時記憶部44と、記憶部42、及び一時記憶部44を制御するメモリコントローラ46と、を備えた補助記憶装置40と、上位CPU2からの要求に基づいて、補助記憶装置40から複数の種類のデータを読み出し、所定の処理部にデータを出力するデータ処理プロセッサ10と、を備えた情報処理装置1であって、データ処理プロセッサ10は、読み出しデータに係るキャッシュ制御の要否情報及び読み出し要求する処理部に応じたキャッシュIDを設定するインターフェース制御部26を備え、補助記憶装置40のメモリコントローラ46は、データ処理プロセッサ10からのリードコマンドに含まれるキャッシュ制御の要否情報及びキャッシュIDに基づいて補助記憶装置40から読み出したデータを一時的に記憶する一時記憶部44の一時記憶領域を選択するように制御したことを特徴とする。
本態様によれば、データ処理プロセッサ10は、インターフェース制御部26が読み出しデータに係るキャッシュ制御の要否情報及び読み出し要求する処理部に応じたキャッシュIDを設定する。補助記憶装置40のメモリコントローラ46は、データ処理プロセッサ10からのリードコマンドに含まれるキャッシュ制御の要否情報及びキャッシュIDに基づいて補助記憶装置40から読み出したデータを一時的に記憶する一時記憶部44の一時記憶領域を選択するように制御したので、リードデータの要求元に関連した各種データ(画像データ、音声データ、発光データ、他データ)のうち、特定のデータのみが一時記憶部を占めてしまうことを回避することにある。
<Configuration, operation and effect of exemplary embodiment of the present invention>
<First aspect>
The information processing apparatus 1 according to this aspect includes a storage unit 42 that stores a plurality of types of data corresponding to a plurality of data types, and a temporary storage unit 44 that temporarily stores data read from the storage unit 42 in a temporary storage area. A plurality of types of data are read from the auxiliary storage device 40 based on a request from the upper CPU 2 and the auxiliary storage device 40 including the memory controller 46 that controls the storage unit 42 and the temporary storage unit 44. An information processing apparatus 1 including a data processing processor 10 that outputs data to a predetermined processing unit, wherein the data processing processor 10 responds to cache control necessity information related to read data and a processing unit that requests reading. And an interface control unit 26 for setting the cache ID, and the memory controller 46 of the auxiliary storage device 40 is a data processing process. Control is performed to select a temporary storage area of the temporary storage unit 44 that temporarily stores data read from the auxiliary storage device 40 based on the cache control necessity information and the cache ID included in the read command from the server 10 It is characterized by that.
According to this aspect, the data processor 10 sets the cache ID corresponding to the cache control necessity information related to the read data and the processing unit that requests the read, by the interface control unit 26. The memory controller 46 of the auxiliary storage device 40 temporarily stores the data read from the auxiliary storage device 40 based on the cache control necessity information and the cache ID included in the read command from the data processor 10. Since 44 temporary storage areas are selected, only specific data occupies the temporary storage unit among various data (image data, audio data, light emission data, other data) related to the request source of the read data. It is to avoid that.

<第2態様>
本態様のインターフェース制御部26は、読み出し要求する複数の処理部のうちどれからの要求であるかを判定するとともに、当該要求がキャッシュ制御を必要としているか否かを判定する要求元/キャッシュ要否判定部26cを備えたことを特徴とする。
本態様によれば、要求元/キャッシュ要否判定部26cが読み出し要求する複数の処理部のうちどれからの要求であるかを判定するので、リードデータの要求元を判定することができ、当該要求がキャッシュ制御を必要としているか否かを判定するので、当該要求がキャッシュ制御を必要としている場合には、特定のデータのみが一時記憶部を占めてしまうことを回避することにある。
<Second aspect>
The interface control unit 26 according to the present aspect determines from which of the plurality of processing units requesting reading, and determines whether or not the request requires cache control. The determination unit 26c is provided.
According to this aspect, since the request source / cache necessity determination unit 26c determines from which of the plurality of processing units requested to read, the request source of the read data can be determined. Since it is determined whether or not the request requires cache control, when the request requires cache control, it is to avoid that only specific data occupies the temporary storage unit.

<第3態様>
本態様の処理部は、画像処理部14、サウンド処理部18、発光処理部22、及びCPU12であることを特徴とする。
本態様によれば、リードデータの要求元が、画像処理部14、サウンド処理部18、発光処理部22、及びCPU12であっても、要求元に関連した各種データ(画像データ、音声データ、発光データ、他データ)のうち、特定のデータのみが一時記憶部を占めてしまうことを回避することにある。
<Third aspect>
The processing units of this aspect are an image processing unit 14, a sound processing unit 18, a light emission processing unit 22, and a CPU 12.
According to this aspect, even if the request source of the read data is the image processing unit 14, the sound processing unit 18, the light emission processing unit 22, and the CPU 12, various data (image data, audio data, light emission, etc.) related to the request source. It is to avoid that only specific data among the data and other data) occupies the temporary storage unit.

<第4態様>
本態様の補助記憶装置40のメモリコントローラ46は、画像データとその他のデータとで区分けして2以上の一時記憶領域を一時記憶部44に設けたことを特徴とする。
本態様によれば、キャッシュメモリを占有しやすい画像データとそれ以外の音声データ、発光データのキャッシュする一時記憶領域を分けて利用するので、処理遅延の許容量が少ない音声データや発光データの読み出しにもキャッシュを用いて行うことができ、音や光の出力を適切に行うことができる。
<4th aspect>
The memory controller 46 of the auxiliary storage device 40 according to this aspect is characterized in that two or more temporary storage areas are provided in the temporary storage unit 44 by dividing into image data and other data.
According to this aspect, the image data that tends to occupy the cache memory, the other audio data, and the temporary storage area for caching the light emission data are used separately, so that the audio data and the light emission data with a small allowable processing delay are read out. In addition, it can be performed using a cache, and sound and light can be output appropriately.

<第5態様>
本態様の情報処理方法は、複数のデータ種別に対応した複数の種類のデータを記憶する記憶部42と、記憶部42から読み出したデータを一時記憶領域に一時的に記憶する一時記憶部44と、記憶部42、及び一時記憶部44を制御するメモリコントローラ46と、を備えた補助記憶装置40と、上位CPU2からの要求に基づいて、補助記憶装置40から複数の種類のデータを読み出し、所定の処理部にデータを出力するデータ処理プロセッサ10と、を備えた情報処理装置1による情報処理方法であって、データ処理プロセッサ10は、読み出しデータに係るキャッシュ制御の要否情報及び読み出し要求する処理部に応じたキャッシュIDを設定するインターフェース制御ステップを実行し、補助記憶装置40のメモリコントローラ46は、データ処理プロセッサ10からのリードコマンドに含まれるキャッシュ制御の要否情報及びキャッシュIDに基づいて補助記憶装置40から読み出したデータを一時的に記憶する一時記憶部44の一時記憶領域を選択するように制御するステップを実行したことを特徴とする。
本態様によれば、データ処理プロセッサ10は、読み出しデータに係るキャッシュ制御の要否情報及び読み出し要求する処理部に応じたキャッシュIDを設定する。補助記憶装置40のメモリコントローラ46は、データ処理プロセッサ10からのリードコマンドに含まれるキャッシュ制御の要否情報及びキャッシュIDに基づいて補助記憶装置40から読み出したデータを一時的に記憶する一時記憶部44の一時記憶領域を選択するように制御したので、リードデータの要求元に関連した各種データ(画像データ、音声データ、発光データ、他データ)のうち、特定のデータのみが一時記憶部を占めてしまうことを回避することにある。
<5th aspect>
The information processing method of this aspect includes a storage unit 42 that stores a plurality of types of data corresponding to a plurality of data types, and a temporary storage unit 44 that temporarily stores data read from the storage unit 42 in a temporary storage area; A plurality of types of data are read from the auxiliary storage device 40 based on a request from the upper CPU 2 and the auxiliary storage device 40 having a memory controller 46 that controls the storage unit 42 and the temporary storage unit 44, and predetermined An information processing method by an information processing apparatus 1 including a data processing processor 10 that outputs data to the processing unit, wherein the data processing processor 10 performs cache control necessity information and read request processing related to read data An interface control step for setting a cache ID according to the memory unit, and a memory controller 46 of the auxiliary storage device 40 The temporary storage area of the temporary storage unit 44 that temporarily stores the data read from the auxiliary storage device 40 is selected based on the cache control necessity information and the cache ID included in the read command from the data processor 10. The control step is executed.
According to this aspect, the data processor 10 sets the cache control necessity information regarding the read data and the cache ID corresponding to the processing unit that requests the read. The memory controller 46 of the auxiliary storage device 40 temporarily stores the data read from the auxiliary storage device 40 based on the cache control necessity information and the cache ID included in the read command from the data processor 10. Since 44 temporary storage areas are selected, only specific data occupies the temporary storage unit among various data (image data, audio data, light emission data, other data) related to the request source of the read data. It is to avoid that.

1…情報処理装置、2…上位CPU、10…データ処理プロセッサ、12…CPU、14…画像処理部、16…表示出力部、18…サウンド処理部、26…インターフェース制御部、26a…要求データ量判定部、26b…セクターカウント設定部、26c…要求元/キャッシュ要否判定部、26d…キャッシュID設定部(CCHID設定部)、26e…修正リードコマンド生成部、26f…修正リードコマンド出力部、40…補助記憶装置、42…記憶部、44…一時記憶部、46…メモリコントローラ、60…領域制御部、60a…一時記憶部領域設定部、60b…キャッシュ制御部、60c…一時記憶部書き込み制御部、60d…キャッシュID設定部判定部、60e…キャッシュ要否判定部 DESCRIPTION OF SYMBOLS 1 ... Information processing apparatus, 2 ... Host CPU, 10 ... Data processor, 12 ... CPU, 14 ... Image processing part, 16 ... Display output part, 18 ... Sound processing part, 26 ... Interface control part, 26a ... Requested data amount Determining unit, 26b ... sector count setting unit, 26c ... request source / cache necessity determining unit, 26d ... cache ID setting unit (CCHID setting unit), 26e ... modified read command generating unit, 26f ... modified read command output unit, 40 ... Auxiliary storage device 42 ... Storage unit 44 ... Temporary storage unit 46 ... Memory controller 60 ... Area control unit 60a ... Temporary storage unit region setting unit 60b ... Cache control unit 60c ... Temporary storage unit write control unit 60d: Cache ID setting unit determination unit, 60e: Cache necessity determination unit

Claims (5)

複数のデータ種別に対応した複数の種類のデータを記憶する記憶部と、
前記記憶部から読み出したデータを一時記憶領域に一時的に記憶する一時記憶部と、
前記記憶部、及び前記一時記憶部を制御する制御部と、を備えた補助記憶装置と、
上位CPUからの要求に基づいて、前記補助記憶装置から複数の種類のデータを読み出し、所定の処理部にデータを出力するデータ処理プロセッサと、を備えた情報処理装置であって、
前記データ処理プロセッサは、読み出しデータに係るキャッシュ制御の要否情報及び読み出し要求する処理部に応じたキャッシュIDを設定するインターフェース制御部を備え、
前記補助記憶装置の制御部は、前記データ処理プロセッサからのリードコマンドに含まれる前記キャッシュ制御の要否情報及びキャッシュIDに基づいて前記補助記憶装置から読み出したデータを一時的に記憶する一時記憶部の一時記憶領域を選択するように制御したことを特徴とする情報処理装置。
A storage unit for storing a plurality of types of data corresponding to a plurality of data types;
A temporary storage unit that temporarily stores data read from the storage unit in a temporary storage area;
An auxiliary storage device comprising: the storage unit; and a control unit that controls the temporary storage unit;
A data processor that reads a plurality of types of data from the auxiliary storage device based on a request from a host CPU and outputs the data to a predetermined processing unit;
The data processor includes an interface control unit that sets cache control information related to read data and a cache ID corresponding to a processing unit that requests read.
The control unit of the auxiliary storage device temporarily stores data read from the auxiliary storage device based on the cache control necessity information and the cache ID included in the read command from the data processor An information processing apparatus controlled to select a temporary storage area.
前記インターフェース制御部は、
前記読み出し要求する複数の処理部のうちどれからの要求であるかを判定するとともに、当該要求がキャッシュ制御を必要としているか否かを判定する要求元/キャッシュ要否判定部を備えたことを特徴とする請求項1記載の情報処理装置。
The interface control unit
A request source / cache necessity determination unit is provided for determining which of the plurality of processing units requesting the reading is a request and determining whether the request requires cache control. The information processing apparatus according to claim 1.
前記処理部は、画像処理部、サウンド処理部、発光処理部、及びCPUであることを特徴とする請求項1記載の情報処理装置。   The information processing apparatus according to claim 1, wherein the processing unit is an image processing unit, a sound processing unit, a light emission processing unit, and a CPU. 前記補助記憶装置の制御部は、画像データとその他のデータとで区分けして2以上の一時記憶領域を前記一時記憶部に設けたことを特徴とする請求項1ないし3の何れか一項記載の情報処理装置。   4. The control unit of the auxiliary storage device is provided with two or more temporary storage areas in the temporary storage unit divided into image data and other data. Information processing device. 複数のデータ種別に対応した複数の種類のデータを記憶する記憶部と、
前記記憶部から読み出したデータを一時記憶領域に一時的に記憶する一時記憶部と、
前記記憶部、及び前記一時記憶部を制御する制御部と、を備えた補助記憶装置と、
上位CPUからの要求に基づいて、前記補助記憶装置から複数の種類のデータを読み出し、所定の処理部にデータを出力するデータ処理プロセッサと、を備えた情報処理装置による情報処理方法であって、
前記データ処理プロセッサは、読み出しデータに係るキャッシュ制御の要否情報及び読み出し要求する処理部に応じたキャッシュIDを設定するインターフェース制御ステップを実行し、
前記補助記憶装置の制御部は、前記データ処理プロセッサからのリードコマンドに含まれる前記キャッシュ制御の要否情報及びキャッシュIDに基づいて前記補助記憶装置から読み出したデータを一時的に記憶する一時記憶部の一時記憶領域を選択するように制御するステップを実行したことを特徴とする情報処理方法。
A storage unit for storing a plurality of types of data corresponding to a plurality of data types;
A temporary storage unit that temporarily stores data read from the storage unit in a temporary storage area;
An auxiliary storage device comprising: the storage unit; and a control unit that controls the temporary storage unit;
An information processing method by an information processing apparatus comprising: a data processor that reads a plurality of types of data from the auxiliary storage device based on a request from a host CPU and outputs the data to a predetermined processing unit;
The data processing processor executes an interface control step for setting cache ID according to the cache control necessity information related to the read data and the processing unit requesting the reading,
The control unit of the auxiliary storage device temporarily stores data read from the auxiliary storage device based on the cache control necessity information and the cache ID included in the read command from the data processor An information processing method characterized by executing a step of controlling to select a temporary storage area.
JP2016173830A 2016-09-06 2016-09-06 Information processing apparatus and information processing method Active JP6402432B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2016173830A JP6402432B2 (en) 2016-09-06 2016-09-06 Information processing apparatus and information processing method
TW106122258A TWI673611B (en) 2016-09-06 2017-07-03 Information processing apparatus and method of processing information

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016173830A JP6402432B2 (en) 2016-09-06 2016-09-06 Information processing apparatus and information processing method

Publications (2)

Publication Number Publication Date
JP2018041215A true JP2018041215A (en) 2018-03-15
JP6402432B2 JP6402432B2 (en) 2018-10-10

Family

ID=61626252

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016173830A Active JP6402432B2 (en) 2016-09-06 2016-09-06 Information processing apparatus and information processing method

Country Status (2)

Country Link
JP (1) JP6402432B2 (en)
TW (1) TWI673611B (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05128002A (en) * 1991-11-01 1993-05-25 Fujitsu Ltd Cache memory division control system
JP2003330792A (en) * 2002-05-10 2003-11-21 Hitachi Ltd Disc system and cache control method
JP2004139349A (en) * 2002-10-17 2004-05-13 Nec Corp Cache memory divided management method in disk array device
JP2005309653A (en) * 2004-04-20 2005-11-04 Hitachi Global Storage Technologies Netherlands Bv Disk device and cache control method
JP2009093559A (en) * 2007-10-11 2009-04-30 Nec Corp Processor, information processing device and cache control method of processor

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001029656A (en) * 1999-07-23 2001-02-06 Konami Co Ltd Game system, recording medium, and image display method
JP2001190844A (en) * 2000-01-06 2001-07-17 Konami Co Ltd Game system and computer readable recording medium for storing game program
JP4384697B2 (en) * 2008-03-26 2009-12-16 株式会社コナミデジタルエンタテインメント GAME DEVICE, GAME PROCESSING METHOD, AND PROGRAM
CN101794245A (en) * 2009-02-01 2010-08-04 宇瞻科技股份有限公司 Electronic device, mainboard, software backup method and software installation method
JP5155226B2 (en) * 2009-03-25 2013-03-06 株式会社コナミデジタルエンタテインメント GAME DEVICE, GAME CONTROL METHOD, AND PROGRAM
TWI467579B (en) * 2011-01-14 2015-01-01 Mstar Semiconductor Inc Electronic device, method for controlling memory thereof and associated computer-readable storage medium
US9311226B2 (en) * 2012-04-20 2016-04-12 Memory Technologies Llc Managing operational state data of a memory module using host memory in association with state change
KR102069857B1 (en) * 2013-02-28 2020-01-23 삼성전자주식회사 Method for rotating an original image using self-learning and apparatuses performing the method
JP6194875B2 (en) * 2014-12-11 2017-09-13 日本電気株式会社 Cache device, cache system, cache method, and cache program

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05128002A (en) * 1991-11-01 1993-05-25 Fujitsu Ltd Cache memory division control system
JP2003330792A (en) * 2002-05-10 2003-11-21 Hitachi Ltd Disc system and cache control method
JP2004139349A (en) * 2002-10-17 2004-05-13 Nec Corp Cache memory divided management method in disk array device
JP2005309653A (en) * 2004-04-20 2005-11-04 Hitachi Global Storage Technologies Netherlands Bv Disk device and cache control method
JP2009093559A (en) * 2007-10-11 2009-04-30 Nec Corp Processor, information processing device and cache control method of processor

Also Published As

Publication number Publication date
TWI673611B (en) 2019-10-01
TW201812595A (en) 2018-04-01
JP6402432B2 (en) 2018-10-10

Similar Documents

Publication Publication Date Title
JP4829365B1 (en) Data storage device and data writing method
JP5492156B2 (en) Information processing apparatus and cache method
JP4988007B2 (en) Information processing apparatus and driver
US20110022783A1 (en) Flash storage with increased throughput
US8825946B2 (en) Memory system and data writing method
US9766974B2 (en) Data storage device and data access-method
US10162554B2 (en) System and method for controlling a programmable deduplication ratio for a memory system
JP2019056972A (en) Memory system and control method of memory system
US20200104072A1 (en) Data management method and storage controller using the same
KR20120055707A (en) Memory system
JP2011090460A (en) Data storage device and method of controlling the same
US10019358B2 (en) Bank address remapping to load balance memory traffic among banks of memory
JP2012128645A (en) Memory system
JP6402432B2 (en) Information processing apparatus and information processing method
JP6424330B2 (en) INFORMATION PROCESSING APPARATUS AND INFORMATION PROCESSING METHOD
US9880778B2 (en) Memory devices and methods
US10802712B2 (en) Information processing apparatus and method of processing information
US20110022782A1 (en) Flash storage with array of attached devices
KR100699268B1 (en) Computer using flash memory of hard disk drive as main ? video memory
JP2019048003A (en) Auxiliary storage device and game machine
JP2021006960A (en) Memory controller and nonvolatile storage device
JP2007048090A (en) Nand type flash memory device compatible with sequential rom interface, and controller therefor
JP4636046B2 (en) MEMORY CONTROLLER, FLASH MEMORY SYSTEM HAVING MEMORY CONTROLLER, AND FLASH MEMORY CONTROL METHOD
JP6757127B2 (en) Storage device for game machines
CN210955025U (en) Memory access system

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180417

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180601

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180824

R150 Certificate of patent or registration of utility model

Ref document number: 6402432

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250