JP7260444B2 - memory access device - Google Patents

memory access device Download PDF

Info

Publication number
JP7260444B2
JP7260444B2 JP2019158103A JP2019158103A JP7260444B2 JP 7260444 B2 JP7260444 B2 JP 7260444B2 JP 2019158103 A JP2019158103 A JP 2019158103A JP 2019158103 A JP2019158103 A JP 2019158103A JP 7260444 B2 JP7260444 B2 JP 7260444B2
Authority
JP
Japan
Prior art keywords
data
area
unit
read
numbers
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2019158103A
Other languages
Japanese (ja)
Other versions
JP2021036394A (en
Inventor
勉 前田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Denso Ten Ltd
Original Assignee
Denso Ten Ltd
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 Denso Ten Ltd filed Critical Denso Ten Ltd
Priority to JP2019158103A priority Critical patent/JP7260444B2/en
Publication of JP2021036394A publication Critical patent/JP2021036394A/en
Application granted granted Critical
Publication of JP7260444B2 publication Critical patent/JP7260444B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Memory System (AREA)

Description

本発明は、複数のバンクを備えるメモリにアクセスするメモリアクセス装置に関する。 The present invention relates to a memory access device that accesses a memory having multiple banks.

RAM(Random Access Memory)は、コンピュータのメインメモリとして用いられる。メモリアクセス装置が、CPU(Central Processing Unit)の要求に応じて、RAMからのデータの読み出しと、RAMへのデータの書き込みとを実行する。例えば、特許文献1は、複数のバンクを備えるメモリにデータを書き込むメモリ制御回路を開示している。 Random Access Memory (RAM) is used as the main memory of a computer. A memory access device reads data from the RAM and writes data to the RAM in response to a request from a CPU (Central Processing Unit). For example, Patent Literature 1 discloses a memory control circuit that writes data to a memory having multiple banks.

CPU(Central Processing Unit)の処理速度の向上に伴って、演算時間の短縮が図られている。しかし、メモリアクセス装置がデータをRAMから読み出す時間が、CPUの演算時間のうち半分近くの時間を占める場合がある。RAMからのデータの読み出しが、演算時間の短縮のボトルネックであるため、RAMからのデータ読み出し時間を短縮することが求められている。 As the processing speed of CPUs (Central Processing Units) improves, efforts are being made to shorten the computation time. However, the time taken by the memory access device to read data from the RAM sometimes occupies nearly half of the CPU's operation time. Since reading data from RAM is a bottleneck in shortening the operation time, it is required to shorten the time to read data from RAM.

特開2004-199608号公報Japanese Patent Application Laid-Open No. 2004-199608

上記問題点に鑑み、本発明は、データの読み出し時間を短縮することができるメモリアクセス装置を提供することを目的とする。 SUMMARY OF THE INVENTION An object of the present invention is to provide a memory access device capable of shortening the data read time.

上記課題を解決するため、第1の発明は、メモリにアクセスするメモリアクセス装置である。メモリは、主領域と、副領域とを備える。主領域は、1~N(Nは3以上の自然数)のデータ番号が付された第1~第Nデータを記憶し、各々が複数のバンクのいずれか1つに設定された複数の単位領域を含む。副領域は、第2~第Nデータを記憶し、各々が複数のバンクのいずれか1つに設定された複数の単位領域を含む。主領域の単位領域の各々は、先頭データのデータ番号が奇数であってデータ番号が連続する2つのデータを記憶する。副領域の単位領域の各々は、先頭データのデータ番号が偶数であってデータ番号が連続する2つのデータを記憶する。メモリアクセス装置は、判断部と、領域決定部と、読み出し制御部とを備える。判断部は、第1~第Nデータのうち連続する2以上のデータを読み出す場合、2以上のデータのデータ番号のうち最小のデータ番号が奇数であるか否かを判断する。領域決定部は、最小のデータ番号が奇数であると判断部により判断された場合に2以上のデータを主領域の単位領域から読み出すことを決定する。領域決定部は、最小のデータ番号が偶数であると判断部により判断された場合、2以上のデータを副領域の単位領域から読み出すことを決定する。読み出し制御部は、領域決定部により決定された単位領域から2以上のデータを読み出す。 In order to solve the above problems, a first invention is a memory access device for accessing memory. The memory comprises a main area and a sub-area. The main area stores first to N-th data with data numbers 1 to N (N is a natural number of 3 or more), and a plurality of unit areas each set to one of a plurality of banks. including. The sub-region stores second to N-th data and includes a plurality of unit regions each set in one of a plurality of banks. Each of the unit areas of the main area stores two pieces of data whose top data has an odd data number and whose data numbers are consecutive. Each unit area of the sub-area stores two pieces of data whose leading data has an even data number and whose data numbers are consecutive. The memory access device includes a determination section, an area determination section, and a read control section. The judging unit judges whether or not the smallest data number among the data numbers of the two or more pieces of data is an odd number when reading two or more consecutive pieces of data out of the first to Nth data. The area determination unit determines to read two or more data from the unit area of the main area when the determination unit determines that the smallest data number is an odd number. The region determination unit determines to read two or more pieces of data from the unit region of the sub-region when the determination unit determines that the smallest data number is an even number. The read control unit reads two or more pieces of data from the unit area determined by the area determination unit.

第1の発明によれば、読み出し制御部は、一の単位領域からデータを読み出す際に、複数のバンクにアクセスしなくてもよい。従って、第1の発明は、データの読み出し時間を短縮することができる。 According to the first invention, the read control unit does not have to access a plurality of banks when reading data from one unit area. Therefore, the first invention can shorten the data read time.

第2の発明は、第1の発明であって、判断部は、2以上のデータの数が奇数であるか否かを判断する。最小のデータ番号が奇数であり、かつ、2以上のデータの数が奇数であると判断部により判断された場合、領域決定部は、2以上のデータのデータ番号のうち最大のデータ番号を除くデータ番号に対応するデータを主領域の単位領域から読み出し、最大のデータ番号に対応するデータを副領域の単位領域から読み出す。 A second invention is the first invention, wherein the determination unit determines whether or not the number of data equal to or greater than 2 is an odd number. If the determination unit determines that the minimum data number is odd and the number of data equal to or greater than 2 is odd, the region determination unit removes the maximum data number among the data numbers equal to or greater than 2. Data corresponding to the data number is read from the unit area of the main area, and data corresponding to the maximum data number is read from the unit area of the sub area.

第2の発明によれば、読み出し対象である2以上のデータ以外のデータをメモリから読み出すことを防ぐことができる。 According to the second invention, it is possible to prevent data other than two or more data to be read from being read from the memory.

第3の発明は、第1又は第2の発明であって、判断部は、2以上のデータの数が奇数であるか否かを判断する。最小のデータ番号が偶数であり、かつ、2以上のデータの数が奇数であると判断部により判断された場合、領域決定部は、2以上のデータのデータ番号のうち最大のデータ番号を除くデータ番号に対応するデータを副領域の単位領域から読み出し、最大のデータ番号に対応するデータを主領域の単位領域から読み出す。 A third invention is the first or second invention, wherein the determination unit determines whether or not the number of data equal to or greater than 2 is an odd number. If the determination unit determines that the minimum data number is even and the number of data equal to or greater than 2 is odd, the area determination unit removes the maximum data number among the data numbers equal to or greater than 2. Data corresponding to the data number is read from the unit areas of the sub-areas, and data corresponding to the maximum data number is read from the unit areas of the main area.

第3の発明によれば、読み出し対象である2以上のデータ以外のデータをメモリから読み出すことを防ぐことができる。 According to the third aspect, it is possible to prevent data other than two or more data to be read from being read from the memory.

第4の発明は、第1~第3の発明であって、さらに、書き込み制御部を備える。書き込み制御部は、第1~第Nデータのうち先頭データのデータ番号が奇数であってデータ番号が連続する2つのデータを主領域の単位領域に書き込み、第2~第Nデータのうち先頭データのデータ番号が偶数であってデータ番号が連続する2つのデータを副領域の単位領域に書き込む。 A fourth invention is the first to third inventions, further comprising a write control section. The write control unit writes two pieces of data having an odd data number and consecutive data numbers among the first to Nth data into the unit area of the main area, and writes the first data among the second to Nth data. Two data whose data numbers are even numbers and whose data numbers are consecutive are written in the unit area of the sub-area.

第4の発明によれば、読み出し制御部が単位領域からデータを読み出す際にバンクへのアクセス回数を削減することができるように、第1~第Nデータをメモリに書き込むことができる。 According to the fourth invention, the first to N-th data can be written into the memory so that the number of accesses to the bank can be reduced when the read control section reads data from the unit area.

第5の発明は、主領域と副領域とを備えるメモリアクセス方法である。主領域は、1~N(Nは3以上の自然数)のデータ番号が付された第1~第Nデータを記憶し、各々が複数のバンクのいずれか1つに設定された複数の単位領域を含む。副領域は、第2~第Nデータを記憶し、各々が複数のバンクのいずれか1つに設定された複数の単位領域を含む。主領域の単位領域の各々は、先頭データのデータ番号が奇数であってデータ番号が連続する2つのデータを記憶する。副領域の単位領域の各々は、先頭データのデータ番号が偶数であってデータ番号が連続する2つのデータを記憶する。メモリアクセス方法は、a)ステップと、b)ステップと、c)ステップとを備える。a)ステップは、メモリに記憶されたデータの読み出し指示を受け付ける。b)ステップは、第1~第Nデータのうち連続する2以上のデータの読み出し指示を受け付けた場合、2以上のデータのデータ番号のうち最小のデータ番号が奇数であるか否かを判断する。c)ステップは、最小のデータ番号が奇数であると判断された場合に2以上のデータを主領域の単位領域から読み出し、最小のデータ番号が偶数であると判断された場合、2以上のデータを副領域の単位領域から読み出す。 A fifth invention is a memory access method comprising a main area and a sub-area. The main area stores first to N-th data with data numbers 1 to N (N is a natural number of 3 or more), and a plurality of unit areas each set to one of a plurality of banks. including. The sub-region stores second to N-th data and includes a plurality of unit regions each set in one of a plurality of banks. Each of the unit areas of the main area stores two pieces of data whose top data has an odd data number and whose data numbers are consecutive. Each unit area of the sub-area stores two pieces of data whose leading data has an even data number and whose data numbers are consecutive. The memory access method comprises steps a), b), and c). The a) step receives an instruction to read data stored in the memory. The step b) determines whether or not the smallest data number among the data numbers of the two or more pieces of data is an odd number when a readout instruction for two or more consecutive pieces of data among the first to Nth data is received. . In step c), if the smallest data number is determined to be an odd number, data of 2 or more are read from the unit area of the main area, and if the smallest data number is determined to be an even number, the data of 2 or more are read. is read from the unit area of the sub-area.

第5の発明は、第1の発明に用いられる。 A fifth invention is used for the first invention.

本発明によれば、データの読み出し時間を短縮することができるメモリアクセス装置を提供することができる。 According to the present invention, it is possible to provide a memory access device capable of shortening the data read time.

本発明の実施の形態に係るシミュレーションシステムの構成を示す機能ブロック図である。1 is a functional block diagram showing the configuration of a simulation system according to an embodiment of the present invention; FIG. 図1に示すシミュレータの構成を示す機能ブロック図である。2 is a functional block diagram showing the configuration of the simulator shown in FIG. 1; FIG. 図2に示す演算部によって用いられるパラメータの一例を示す図である。3 is a diagram showing an example of parameters used by the calculation unit shown in FIG. 2; FIG. 図2に示すメモリに設定される主領域及び副領域を示す図である。3 is a diagram showing a main area and sub-areas set in the memory shown in FIG. 2; FIG. 図2に示すメモリアクセス装置の構成を示す機能ブロック図である。3 is a functional block diagram showing the configuration of the memory access device shown in FIG. 2; FIG. 図2に示すメモリアクセス装置がパラメータを読み出す時の動作を示すフローチャートである。FIG. 3 is a flow chart showing an operation when the memory access device shown in FIG. 2 reads parameters; FIG. 単位領域が複数のバンクを用いて設定されたメモリの一例を示す図である。FIG. 4 is a diagram showing an example of a memory in which unit areas are set using a plurality of banks; 図2に示すメモリアクセス装置がパラメータを書き込む時の動作を示すフローチャートである。FIG. 3 is a flow chart showing an operation when the memory access device shown in FIG. 2 writes parameters; FIG. CPUバス構成を示す図である。FIG. 2 is a diagram showing a CPU bus configuration; FIG.

以下、図面を参照し、本発明の実施の形態を詳しく説明する。図中同一又は相当部分には同一符号を付してその説明は繰り返さない。 BEST MODE FOR CARRYING OUT THE INVENTION Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. The same reference numerals are given to the same or corresponding parts in the drawings, and the description thereof will not be repeated.

[1.構成]
[1.1.シミュレーションシステム100の構成]
図1は、本発明の一実施の形態に係るシミュレーションシステム100の構成を示す機能ブロック図である。図1を参照して、シミュレーションシステム100は、自動車等の車両に搭載されるECU(Electronic Control Unit)2の評価に用いられる。シミュレーションシステム100は、シミュレータ1と、ECU2と、ユーザ端末3と、中継装置4とを備える。
[1. composition]
[1.1. Configuration of simulation system 100]
FIG. 1 is a functional block diagram showing the configuration of a simulation system 100 according to one embodiment of the invention. Referring to FIG. 1, a simulation system 100 is used to evaluate an ECU (Electronic Control Unit) 2 mounted on a vehicle such as an automobile. A simulation system 100 includes a simulator 1 , an ECU 2 , a user terminal 3 and a relay device 4 .

シミュレータ1は、ECU2と接続される。シミュレータ1は、ECU2から出力される制御信号に従って、車両に搭載されるモータ及びインバータの動作を模擬演算する。 Simulator 1 is connected to ECU 2 . The simulator 1 simulates operations of a motor and an inverter mounted on the vehicle in accordance with control signals output from the ECU 2 .

ECU2は、シミュレーションシステム100における評価対象である。ECU2は、中継装置4を介してユーザ端末3から動作指示を取得し、取得した動作指示に応じた制御信号をシミュレータ1に出力する。 The ECU 2 is an evaluation target in the simulation system 100 . The ECU 2 acquires an operation instruction from the user terminal 3 via the relay device 4 and outputs a control signal to the simulator 1 according to the acquired operation instruction.

ユーザ端末3は、ECU2の評価者が使用するコンピュータである。ユーザ端末3は、中継装置4を介してシミュレータ1及びECU2に動作指示を出力する。ユーザ端末3は、中継装置4を介してシミュレータ1から模擬演算結果を取得し、その取得した模擬演算結果を図示しないモニタに表示する。 The user terminal 3 is a computer used by an evaluator of the ECU 2 . The user terminal 3 outputs operation instructions to the simulator 1 and the ECU 2 via the relay device 4 . The user terminal 3 acquires the simulated computation result from the simulator 1 via the relay device 4 and displays the acquired simulated computation result on a monitor (not shown).

中継装置4は、シミュレータ1とユーザ端末3との間の通信を中継し、ECU2とユーザ端末3との間の通信を中継する。 The relay device 4 relays communication between the simulator 1 and the user terminal 3 and relays communication between the ECU 2 and the user terminal 3 .

シミュレーションシステム100において、装置間の通信方式は特に限定されない。例えば、シミュレータ1は、CAN(Controller Area Network)を用いてECU2と通信する。中継装置4は、LAN(Local Area Network)を用いて、シミュレータ1及びユーザ端末と通信する。中継装置4は、図示しないプロトコル変換装置を介して、ECU2と通信する。プロトコル変換装置は、LANに準拠した通信とCANに準拠した通信とを相互に変換する。中継装置4は、LANを用いてプロトコル変換装置と通信する。ECU2は、CANを用いてプロトコル変換装置と通信する。 In the simulation system 100, the communication method between devices is not particularly limited. For example, the simulator 1 communicates with the ECU 2 using CAN (Controller Area Network). The relay device 4 communicates with the simulator 1 and user terminals using a LAN (Local Area Network). The relay device 4 communicates with the ECU 2 via a protocol conversion device (not shown). The protocol conversion device mutually converts communication conforming to LAN and communication conforming to CAN. The relay device 4 communicates with the protocol conversion device using a LAN. The ECU 2 communicates with the protocol converter using CAN.

[1.2.シミュレータ1の構成]
図2は、図1に示すシミュレータ1の構成を示す機能ブロック図である。図2を参照して、シミュレータ1は、演算部11と、メモリアクセス装置12、メモリコントローラ13と、メモリ14とを備える。
[1.2. Configuration of Simulator 1]
FIG. 2 is a functional block diagram showing the configuration of the simulator 1 shown in FIG. 1. As shown in FIG. With reference to FIG. 2, simulator 1 includes an arithmetic unit 11, a memory access device 12, a memory controller 13, and a memory .

演算部11は、ECU2からPWM(Pulse Width Modulation)信号22Vを受け、その受けたPWM信号22Vに基づいて、車両に搭載されるインバータ及びモータの動作をシミュレーションする。 The calculation unit 11 receives a PWM (Pulse Width Modulation) signal 22V from the ECU 2 and simulates the operation of the inverter and motor mounted on the vehicle based on the received PWM signal 22V.

具体的には、演算部11は、その受けたPWM信号22Vに基づいて、インバータの動作をシミュレーションする。PWM信号22Vは、インバータが直流から三相交流を生成するための制御信号であり、U相、V相及びW相の各々の電圧に対応する信号を含む。演算部11は、インバータの動作のシミュレーションの結果として、電流信号24iを生成する。電流信号24iは、インバータからモータに供給される三相交流の電流を示し、U相、V相及びW相の各々の電流値を含む。 Specifically, the calculation unit 11 simulates the operation of the inverter based on the received PWM signal 22V. The PWM signal 22V is a control signal for the inverter to generate three-phase alternating current from direct current, and includes signals corresponding to voltages of the U-phase, V-phase and W-phase. The calculation unit 11 generates the current signal 24i as a result of simulating the operation of the inverter. The current signal 24i indicates a three-phase AC current supplied from the inverter to the motor, and includes current values of each of U-phase, V-phase and W-phase.

演算部11は、電流信号24iを生成した後に、生成した電流信号24iと、メモリアクセス装置12から受けたパラメータ25Pとに基づいて、モータの動作をシミュレーションする。詳細については後述するが、パラメータ25Pは、メモリ14に記憶されている。演算部11は、モータの動作のシミュレーションの結果として、位置信号24θを生成する。位置信号24θは、モータに含まれるロータの回転位置を示す。 After generating the current signal 24 i , the calculation unit 11 simulates the operation of the motor based on the generated current signal 24 i and the parameter 25 P received from the memory access device 12 . Although details will be described later, the parameter 25P is stored in the memory 14 . The computing unit 11 generates the position signal 24θ as a result of simulating the operation of the motor. The position signal 24θ indicates the rotational position of the rotor included in the motor.

演算部11は、ユーザ端末3から初期条件23を受け、その受けた初期条件23に基づいてインバータ及びモータの動作のシミュレーションを開始する。例えば、初期条件23は、モータに含まれるロータの初期回転位置や、インバータに含まれるスイッチング素子の状態を含む。 The calculation unit 11 receives the initial conditions 23 from the user terminal 3 and starts simulating the operation of the inverter and the motor based on the received initial conditions 23 . For example, the initial conditions 23 include the initial rotational position of the rotor included in the motor and the state of switching elements included in the inverter.

モータのシミュレーションについて、さらに詳しく説明する。図3は、演算部11によるシミュレーションに用いられるパラメータ25Pの一例を示すテーブル51である。図3を参照して、データ番号が、パラメータ25Pの各々に割り当てられる。データ番号は、1以上の自然数であり、パラメータ25Pの識別情報に相当する。パラメータ25Pは、5種類あり、鎖交磁束、d軸電流と、q軸電流と、d軸インダクタンス及びq軸インダクタンスのいずれかである。これら5種類のパラメータ25Pは、U相電流と、V相電流、W相電流及びロータの回転位置によって一意に決まる。 The motor simulation will be described in more detail. FIG. 3 is a table 51 showing an example of parameters 25P used for simulation by the calculation unit 11. As shown in FIG. Referring to FIG. 3, a data number is assigned to each parameter 25P. The data number is a natural number of 1 or more and corresponds to the identification information of the parameter 25P. There are five types of parameters 25P, one of flux linkage, d-axis current, q-axis current, d-axis inductance, and q-axis inductance. These five types of parameters 25P are uniquely determined by the U-phase current, the V-phase current, the W-phase current, and the rotational position of the rotor.

演算部11は、鎖交磁束、d軸電流、q軸電流、d軸インダクタンス及びq軸インダクタンスを用いて、一の時刻におけるU相電流と、V相電流、W相電流及びロータの回転位置を算出する。演算部11は、算出したU相電流と、V相電流、W相電流及びロータの回転位置に基づいて特定されるパラメータ25Pを用いて、一の時刻よりも後の時刻におけるU相電流と、V相電流、W相電流及びロータの回転位置を算出する。 The calculation unit 11 uses the interlinkage magnetic flux, d-axis current, q-axis current, d-axis inductance, and q-axis inductance to calculate the U-phase current, V-phase current, W-phase current, and rotational position of the rotor at one time. calculate. The calculation unit 11 uses the calculated U-phase current, the V-phase current, the W-phase current, and the parameter 25P specified based on the rotational position of the rotor to calculate the U-phase current at a time after the first time, A V-phase current, a W-phase current, and the rotational position of the rotor are calculated.

再び図2を参照して、メモリアクセス装置12は、電流信号24i及び位置信号24θを演算部11から受ける。メモリアクセス装置12は、読み出し指示27をメモリコントローラ13に出力することにより、その受けた電流信号24i及び位置信号24θに対応するパラメータ25Pをメモリ14から取得する。 Referring to FIG. 2 again, memory access device 12 receives current signal 24 i and position signal 24 θ from calculation unit 11 . The memory access device 12 outputs the read instruction 27 to the memory controller 13 to acquire the parameter 25P corresponding to the received current signal 24i and position signal 24θ from the memory 14 .

メモリアクセス装置12は、複数のパラメータ25Pをユーザ端末3から取得した場合、書き込み指示28をメモリコントローラ13に出力することにより、その取得した複数のパラメータ25Pをメモリ14に書き込む。パラメータ25Pは、シミュレータ1の動作開始時にメモリ14に書き込まれる。 When the memory access device 12 acquires a plurality of parameters 25P from the user terminal 3, the memory access device 12 writes the acquired parameters 25P to the memory 14 by outputting a write instruction 28 to the memory controller 13. FIG. The parameter 25P is written into the memory 14 when the simulator 1 starts operating.

つまり、シミュレータ1において、パラメータ25Pを用いたモータの動作の模擬演算と、模擬演算の結果に基特定されるパラメータ25Pの特定とが繰り返される。これにより、車両に搭載されるモータの動作を仮想的に実現される。 That is, in the simulator 1, the simulated calculation of the motor operation using the parameters 25P and the specification of the parameters 25P based on the result of the simulated calculation are repeated. As a result, the operation of the motor mounted on the vehicle can be virtually realized.

メモリコントローラ13は、メモリアクセス装置12の制御に応じて、メモリ14にアクセスする。具体的には、メモリコントローラ13は、読み出し指示27をメモリアクセス装置12から受けた場合、その受けた読み出し指示27に含まれるアドレスからデータを読み出す。メモリコントローラ13は、書き込み指示28をメモリアクセス装置12から受けた場合、その受けた書き込み指示28に含まれるデータをメモリ14に書き込む。 The memory controller 13 accesses the memory 14 under the control of the memory access device 12 . Specifically, when the memory controller 13 receives the read instruction 27 from the memory access device 12 , it reads data from the address included in the received read instruction 27 . When receiving the write instruction 28 from the memory access device 12 , the memory controller 13 writes the data included in the received write instruction 28 to the memory 14 .

メモリ14は、RAM(Random Access Memory)であり、シミュレータ1のメインメモリである。メモリ14は、シミュレータ1が実行するプログラムや、パラメータ25Pを記憶する。従って、図2に示していないが、演算部11が、メモリコントローラ13を介してメモリ14にアクセスすることがある。メモリ14は、バンク141~143を備える。本実施の形態において、バンク141~143の各々は、メモリモジュールである。 The memory 14 is a RAM (Random Access Memory) and is the main memory of the simulator 1 . The memory 14 stores programs executed by the simulator 1 and parameters 25P. Therefore, although not shown in FIG. 2, the computing unit 11 may access the memory 14 via the memory controller 13 . The memory 14 comprises banks 141-143. In this embodiment, each of banks 141-143 is a memory module.

[1.3.メモリ14の記憶領域]
図4は、図2に示すメモリ14に記憶されるデータの一例を示す図である。図4を参照して、メモリ14は、主領域41と副領域42とを含む。主領域41及び副領域42は、パラメータ25Pを記憶するために用いられ、複数の単位領域に区分される。メモリアクセス装置12は、パラメータ25Pをメモリ14から読み出す場合、単位領域に含まれる全てのパラメータ25Pを読み出す。図4に示すアドレスは、論理アドレスである。
[1.3. Storage area of memory 14]
FIG. 4 is a diagram showing an example of data stored in memory 14 shown in FIG. Referring to FIG. 4, memory 14 includes a main area 41 and a sub-area 42 . The main area 41 and sub-area 42 are used to store the parameters 25P and are divided into a plurality of unit areas. When reading the parameters 25P from the memory 14, the memory access device 12 reads all the parameters 25P included in the unit area. The addresses shown in FIG. 4 are logical addresses.

主領域41は、データ番号が「1」~「360」であるパラメータ25Pを記憶する。副領域42は、データ番号が「2」~「360」であるパラメータ25Pを記憶する。パラメータ25Pのデータ番号を、「k」を用いて示している。 The main area 41 stores parameters 25P with data numbers "1" to "360". The sub-area 42 stores parameters 25P with data numbers "2" to "360". The data number of the parameter 25P is indicated using "k".

主領域41は、複数の単位領域61に区分される。単位領域61の各々は、バンク141~143のいずれかに設定される。例えば、単位領域61Aは、「0001」から「0002」までのアドレスが設定された記憶領域であり、バンク141に設定される。単位領域61Bは、「0003」から「0004」までのアドレスが設定された記憶領域であり、バンク142に設定される。単位領域61Cは、「0005」から「0006」までのアドレスが設定された記憶領域であり、バンク143に設定される。 The main area 41 is divided into a plurality of unit areas 61 . Each of unit regions 61 is set in one of banks 141-143. For example, the unit area 61A is a storage area in which addresses from “0001” to “0002” are set, and is set in the bank 141 . The unit area 61B is a storage area in which addresses from “0003” to “0004” are set, and is set in the bank 142 . The unit area 61C is a storage area in which addresses from “0005” to “0006” are set, and is set in the bank 143 .

単位領域61の各々は、データ番号が連続する2つのパラメータ25Pを記憶する。例えば、単位領域61Aは、データ番号が「1」~「2」であるパラメータ25Pを格納する。単位領域61Bは、データ番号が「3」~「4」であるパラメータ25Pを格納する。単位領域61Cは、データ番号が「5」~「6」であるパラメータ25Pを格納する。つまり、単位領域61の先頭アドレスに格納されるパラメータ25Pのデータ番号は奇数である。 Each unit area 61 stores two parameters 25P with consecutive data numbers. For example, the unit area 61A stores parameters 25P whose data numbers are "1" to "2". The unit area 61B stores parameters 25P whose data numbers are "3" to "4". The unit area 61C stores parameters 25P whose data numbers are "5" to "6". That is, the data number of the parameter 25P stored at the top address of the unit area 61 is odd.

副領域42は、主領域41と同様に、複数の単位領域62に区分される。複数の単位領域62の各々は、バンク141~143のいずれかに設定される。例えば、単位領域62Aは、「2001」から「2002」までのアドレスが設定された記憶領域であり、バンク141に設定される。単位領域61Bは、「2003」から「2004」までのアドレスが設定された記憶領域であり、バンク142に設定される。単位領域61Cは、「2005」から「2006」までのアドレスが設定された記憶領域であり、バンク143に設定される。 The sub-region 42 is divided into a plurality of unit regions 62 like the main region 41 . Each of the plurality of unit regions 62 is set in one of banks 141-143. For example, the unit area 62A is a storage area in which addresses from "2001" to "2002" are set, and is set in the bank 141. FIG. The unit area 61B is a storage area in which addresses from “2003” to “2004” are set, and is set in the bank 142 . The unit area 61C is a storage area in which addresses from “2005” to “2006” are set, and is set in the bank 143 .

単位領域62の各々は、データ番号が連続する2つのパラメータ25Pを記憶する。例えば、単位領域62Aは、データ番号が「2」~「3」であるパラメータ25Pを格納する。単位領域62Bは、データ番号が「4」~「5」であるパラメータ25Pを格納する。単位領域62Cは、データ番号が「6」~「7」であるパラメータ25Pを格納する。つまり、単位領域62において、先頭アドレスに格納されるパラメータ25Pのデータ番号は偶数である。 Each unit area 62 stores two parameters 25P with consecutive data numbers. For example, the unit area 62A stores parameters 25P with data numbers "2" to "3". The unit area 62B stores parameters 25P whose data numbers are "4" to "5". The unit area 62C stores parameters 25P with data numbers "6" to "7". That is, in the unit area 62, the data number of the parameter 25P stored at the top address is an even number.

[1.4.メモリアクセス装置12の構成]
図5は、図2に示すメモリアクセス装置12の構成を示す機能ブロック図である。図5を参照して、メモリアクセス装置12は、データ番号特定部121と、判断部122と、領域決定部123と、読み出し制御部124と、書き込み制御部125とを備える。
[1.4. Configuration of memory access device 12]
FIG. 5 is a functional block diagram showing a configuration of memory access device 12 shown in FIG. 2. Referring to FIG. Referring to FIG. 5 , memory access device 12 includes data number identification unit 121 , determination unit 122 , area determination unit 123 , read control unit 124 and write control unit 125 .

データ番号特定部121は、電流信号24i及び位置信号24θを演算部11から受ける。データ番号特定部121は、その受けた電流信号24i及び位置信号24θに対応するパラメータ25Pのデータ番号を決定する。演算部11が5種類のパラメータ25Pを用いてシミュレーションするため、データ番号特定部121は、5つの種類に対応する5つのデータ番号を決定する。データ番号特定部121は、決定したデータ番号を記録した番号情報31を判断部122及び領域決定部123に出力する。 The data number identification unit 121 receives the current signal 24 i and the position signal 24 θ from the calculation unit 11 . The data number identification unit 121 determines the data number of the parameter 25P corresponding to the received current signal 24i and position signal 24θ. Since the calculation unit 11 performs simulation using five types of parameters 25P, the data number identification unit 121 determines five data numbers corresponding to the five types. The data number identification unit 121 outputs number information 31 recording the determined data number to the determination unit 122 and the area determination unit 123 .

判断部122は、番号情報31に記録されたデータ番号の中で先頭のデータ番号を特定する。判断部122は、特定した先頭のデータ番号が奇数であるか否かを判断する。判断部122は、特定した先頭データのデータ番号が奇数であるか否かを示す判断情報32を領域決定部123に出力する。 The determination unit 122 identifies the leading data number among the data numbers recorded in the number information 31 . The determination unit 122 determines whether or not the specified top data number is an odd number. Judgment section 122 outputs judgment information 32 indicating whether or not the data number of the specified head data is odd to area determination section 123 .

領域決定部123は、データ番号特定部121から受けた番号情報31と、判断部122から受けた判断情報32に基づいて、パラメータ25Pを読み出すアドレスを決定する。 Based on the number information 31 received from the data number identification unit 121 and the determination information 32 received from the determination unit 122, the area determination unit 123 determines the address from which the parameter 25P is read.

具体的には、判断情報32が、先頭のデータ番号が奇数であることを示す場合、領域決定部123は、データ番号特定部121により特定されたデータ番号のうち、最後尾のデータ番号に対応するパラメータ25Pを除くパラメータ25Pを、主領域41の単位領域から読み出すことを決定する。領域決定部123は、最後尾のデータ番号に対応するパラメータ25Pを副領域42の単位領域から読み出すことを決定する。 Specifically, when the determination information 32 indicates that the leading data number is an odd number, the region determination unit 123 selects the data number specified by the data number specifying unit 121 that corresponds to the last data number. It is determined to read the parameters 25P from the unit area of the main area 41 except for the parameters 25P to be read. The area determination unit 123 determines to read the parameter 25P corresponding to the last data number from the unit area of the sub-area 42 .

判断情報32が、先頭のデータ番号が偶数であることを示す場合、領域決定部123は、データ番号特定部121により特定されたデータ番号のうち、最後尾のデータ番号に対応するパラメータ25Pを除くパラメータ25Pを、副領域42の単位領域から読み出すことを決定する。領域決定部123は、最後尾のデータ番号に対応するパラメータ25Pを主領域41の単位領域から読み出すことを決定する。 If the determination information 32 indicates that the leading data number is an even number, the area determination unit 123 excludes the parameter 25P corresponding to the last data number from among the data numbers specified by the data number specifying unit 121. It is decided to read the parameter 25P from the unit area of the sub-area 42 . The area determination unit 123 determines to read the parameter 25P corresponding to the last data number from the unit area of the main area 41 .

領域決定部123は、決定した単位領域の各々を示す読み出しアドレス33を読み出し制御部124に出力する。読み出しアドレス33は、パラメータ25Pのデータ番号と、パラメータ25Pが書き込まれたアドレスとを対応付けたアドレスデータ34に基づいて決定される。アドレスデータ34は、パラメータ25Pがメモリ14に書き込まれる際に、書き込み制御部125によって生成される。 The area determination unit 123 outputs the readout address 33 indicating each determined unit area to the readout control unit 124 . The read address 33 is determined based on the address data 34 that associates the data number of the parameter 25P with the address where the parameter 25P is written. The address data 34 is generated by the write controller 125 when the parameter 25P is written to the memory 14. FIG.

読み出し制御部124は、読み出しアドレス33を領域決定部123から受け、その受けた読み出しアドレス33に基づいて、パラメータ25Pをメモリ14から読み出す。具体的には、読み出し制御部124は、受けた読み出しアドレス33を含む読み出し指示27をメモリコントローラ13に出力する。読み出し制御部124は、パラメータ25Pを読み出し指示27の応答として受け、その受けたパラメータ25Pを演算部11に出力する。 The read control unit 124 receives the read address 33 from the area determination unit 123 and reads the parameter 25P from the memory 14 based on the received read address 33 . Specifically, the read control unit 124 outputs the read instruction 27 including the received read address 33 to the memory controller 13 . The readout control unit 124 receives the parameter 25P as a response to the readout instruction 27 and outputs the received parameter 25P to the calculation unit 11 .

書き込み制御部125は、パラメータ25Pをユーザ端末3から受けた場合、その受けたパラメータ25Pの書き込みを指示する書き込み指示28をメモリコントローラ13に出力する。書き込み制御部125は、アドレスデータ34を生成し、その生成したアドレスデータ34を領域決定部123に出力する。アドレスデータ34は、パラメータ25Pのデータ番号と、パラメータ25Pが書き込まれたアドレスとを対応付けたデータである。 When receiving the parameter 25P from the user terminal 3, the write control unit 125 outputs to the memory controller 13 a write instruction 28 instructing the writing of the received parameter 25P. The write control unit 125 generates address data 34 and outputs the generated address data 34 to the area determination unit 123 . The address data 34 is data that associates the data number of the parameter 25P with the address in which the parameter 25P is written.

[2.動作]
[2.1.パラメータ読み出し時の動作]
図6は、図2に示すメモリアクセス装置12がパラメータ25Pを読み出すときの動作を示すフローチャートである。図3~図6を参照しながら、パラメータ25Pを読み出すメモリアクセス装置12の動作を説明する。
[2. motion]
[2.1. Operation when reading parameters]
FIG. 6 is a flow chart showing the operation when the memory access device 12 shown in FIG. 2 reads the parameter 25P. The operation of the memory access device 12 for reading the parameter 25P will be described with reference to FIGS. 3 to 6. FIG.

データ番号特定部121が、電流信号24i及び位置信号24θを演算部11から受けた場合、メモリアクセス装置12は、図6に示す処理を開始する。 When the data number identification unit 121 receives the current signal 24i and the position signal 24θ from the calculation unit 11, the memory access device 12 starts the processing shown in FIG.

データ番号特定部121は、演算部11から受けた電流信号24i及び位置信号24θに対応するデータ番号を特定する(ステップS101)。具体的には、データ番号特定部121は、電流信号24i及び位置信号24θをパラメータ25Pのデータ番号に対応付けたテーブル51を保持している。データ番号特定部121は、図3に示すテーブル51を参照して、電流信号24i及び位置信号24θに対応するパラメータ25Pのデータ番号を特定する。 The data number identification unit 121 identifies the data number corresponding to the current signal 24i and the position signal 24θ received from the calculation unit 11 (step S101). Specifically, the data number specifying unit 121 holds a table 51 in which the current signal 24i and the position signal 24θ are associated with the data number of the parameter 25P. The data number specifying unit 121 refers to the table 51 shown in FIG. 3 to specify the data number of the parameter 25P corresponding to the current signal 24i and the position signal 24θ.

ステップS101において、鎖交磁束、d軸電流、q軸電流、d軸インダクタンス及びq軸インダクタンスの各々に対応するデータ番号が、電流信号24i及び位置信号24θに基づいて特定される。つまり、データ番号特定部121は、ステップS101において、5つのデータ番号を特定する。特定された5つのデータ番号は、連続している。データ番号特定部121は、連続する5つのデータ番号を記録した番号情報31を判断部122及び領域決定部123に出力する。 In step S101, data numbers corresponding to each of the flux linkage, d-axis current, q-axis current, d-axis inductance, and q-axis inductance are specified based on the current signal 24i and the position signal 24θ. That is, the data number identification unit 121 identifies five data numbers in step S101. The specified five data numbers are consecutive. The data number identification unit 121 outputs number information 31 recording five consecutive data numbers to the determination unit 122 and the area determination unit 123 .

判断部122は、番号情報31をデータ番号特定部121から受ける。判断部122は、その受けた番号情報31に記録されたデータ番号のうち、先頭のデータ番号と最後尾のデータ番号とを特定する(ステップS102)。先頭のデータ番号は、番号情報31に記録されたデータ番号のうち最小の番号である。最後尾のデータ番号は、番号情報31に記録されたデータ番号のうち最大の番号である。例えば、番号情報31に含まれるデータ番号が、「3」~「7」である場合、先頭のデータ番号は「3」である。最後尾のデータ番号は、「7」である。 Determination unit 122 receives number information 31 from data number identification unit 121 . The determination unit 122 identifies the leading data number and the trailing data number among the data numbers recorded in the received number information 31 (step S102). The leading data number is the smallest number among the data numbers recorded in the number information 31 . The data number at the end is the largest number among the data numbers recorded in the number information 31 . For example, when the data numbers included in the number information 31 are "3" to "7", the top data number is "3". The last data number is "7".

判断部122は、メモリ14から読み出すパラメータ25Pの数が奇数であるか否かを判断する(ステップS103)。具体的には、判断部122は、番号情報31に記録されたデータ番号をカウントした値が奇数であるか否かを判断する。 The determination unit 122 determines whether or not the number of parameters 25P read from the memory 14 is an odd number (step S103). Specifically, the determination unit 122 determines whether or not the value obtained by counting the data numbers recorded in the number information 31 is an odd number.

以下、メモリ14から読み出すパラメータ25Pの数が奇数である場合と、偶数である場合とに分けて、メモリアクセス装置12の動作を説明する。 The operation of the memory access device 12 will now be described separately for when the number of parameters 25P read from the memory 14 is an odd number and when it is an even number.

(読み出すパラメータ25Pの数が奇数である場合)
判断部122は、先頭のデータ番号に対応するパラメータ25Pを主領域41及び副領域42のどちらから読み出すかを決定するために、ステップS102で特定した先頭のデータ番号が奇数であるか否かを判断する(ステップS104)。先頭のデータ番号が奇数であるか否かによって、先頭のデータ番号に対応するパラメータ25Pを読み出す領域を変更する理由については後述する。
(When the number of parameters 25P to be read is an odd number)
In order to determine from which of the main area 41 or the sub-area 42 the parameter 25P corresponding to the leading data number is to be read, the determination unit 122 determines whether the leading data number specified in step S102 is an odd number. It judges (step S104). The reason for changing the area from which the parameter 25P corresponding to the leading data number is read depending on whether the leading data number is an odd number will be described later.

先頭のデータ番号が奇数である場合(ステップS104においてYes)、判断部122は、読み出すパラメータ25Pの数が奇数であり、かつ、先頭のデータ番号が奇数であることを示す判断情報32を領域決定部123に出力する。 If the leading data number is an odd number (Yes in step S104), the determination unit 122 determines that the number of parameters 25P to be read is an odd number and that the leading data number is an odd number. Output to the unit 123 .

領域決定部123は、判断部122から受けた判断情報32に基づいて、最後尾のデータ番号を除くデータ番号に対応するパラメータ25Pを、主領域41から読み出すことを決定する(ステップS105)。領域決定部123は、判断部122から受けた判断情報32に基づいて、最後尾のデータ番号に対応するパラメータ25Pを副領域42から読み出すことを決定する(ステップS106)。 Based on the judgment information 32 received from the judgment section 122, the area determination section 123 determines to read the parameter 25P corresponding to the data number excluding the last data number from the main area 41 (step S105). Based on the judgment information 32 received from the judgment section 122, the area determination section 123 determines to read the parameter 25P corresponding to the last data number from the sub-area 42 (step S106).

番号情報31に記録されたデータ番号が「3」~「7」である場合を例にして、ステップS105~S106を詳しく説明する。 Steps S105 and S106 will be described in detail by taking as an example the case where the data numbers recorded in the number information 31 are "3" to "7".

最後尾のデータ番号が「7」であるため、領域決定部123は、データ番号が「3」~「6」であるパラメータ25Pを記録した単位領域を、主領域41から読み出すことを決定する(ステップS105)。メモリアクセス装置12は、パラメータ25Pを単位領域ごとに読み出すため、主領域41に設定された単位領域61B及び61Cを読み出し対象に決定する。 Since the last data number is "7", the area determination unit 123 determines to read out from the main area 41 the unit areas in which the parameters 25P with data numbers "3" to "6" are recorded ( step S105). Since the memory access device 12 reads the parameter 25P for each unit area, the unit areas 61B and 61C set in the main area 41 are determined as read targets.

領域決定部123は、データ番号が「7」であるパラメータ25Pを記録した単位領域を、副領域42から読み出すことを決定する(ステップS106)。メモリアクセス装置12は、パラメータ25Pを単位領域ごとに読み出すため、副領域42に設定された単位領域62Cを読み出し対象に決定する。 The area determining unit 123 determines to read the unit area in which the parameter 25P having the data number "7" is recorded from the sub area 42 (step S106). Since the memory access device 12 reads the parameter 25P for each unit area, the unit area 62C set in the sub-area 42 is determined as the read target.

領域決定部123は、ステップS105及びS106の結果として、読み出し対象に決定された単位領域61B、61C及び62Cの各々の読み出しアドレス33を読み出し制御部124に出力する。 As a result of steps S105 and S106, the area determination unit 123 outputs the read addresses 33 of the unit areas 61B, 61C, and 62C determined to be read targets to the read control unit 124 .

読み出し制御部124は、領域決定部123から受けた読み出しアドレス33を用いて、パラメータ25Pをメモリ14から読み出す(ステップS109)。具体的には、読み出し制御部124は、領域決定部123から受けた読み出しアドレス33を含む読み出し指示27を生成し、その生成した読み出し指示27をメモリコントローラ13に出力する。メモリコントローラ13は、領域決定部123から受けた読み出し指示27に基づいてパラメータ25Pを読み出し、読み出したパラメータ25Pを読み出し制御部124に出力する。読み出し制御部124は、メモリコントローラ13から受けたパラメータ25Pを演算部11に出力する。 The read control unit 124 uses the read address 33 received from the area determination unit 123 to read the parameter 25P from the memory 14 (step S109). Specifically, the read control unit 124 generates a read instruction 27 including the read address 33 received from the area determination unit 123 and outputs the generated read instruction 27 to the memory controller 13 . The memory controller 13 reads the parameter 25P based on the read instruction 27 received from the area determination unit 123 and outputs the read parameter 25P to the read control unit 124 . The read control unit 124 outputs the parameters 25P received from the memory controller 13 to the calculation unit 11 .

番号情報31に記録されたデータ番号が「3」~「7」である場合、読み出し制御部124は、最初に、単位領域61Bを読み出し、その次に、単位領域61Cを読み出す。最後に、単位領域62Cが読み出される。 When the data numbers recorded in the number information 31 are "3" to "7", the read control unit 124 first reads the unit area 61B and then reads the unit area 61C. Finally, the unit area 62C is read.

この結果、データ番号が「6」であるパラメータ25Pは、主領域41及び副領域42の各々から読み出される。データ番号が「6」であるパラメータ25Pは、演算部11に2回出力される。演算部11は、同じパラメータ25Pを重複して受けた場合、同じパラメータ25Pのうち一方を破棄する。 As a result, the parameter 25P whose data number is “6” is read from each of the main area 41 and the sub-area 42 . The parameter 25P whose data number is "6" is output to the calculation unit 11 twice. When the calculation unit 11 receives the same parameters 25P in duplicate, it discards one of the same parameters 25P.

メモリアクセス装置12が、データ番号が「6」~「7」であるパラメータ25Pを副領域42から読み出す理由を説明する。 The reason why the memory access device 12 reads out the parameters 25P whose data numbers are "6" to "7" from the sub-area 42 will be explained.

読み出し制御部124は、上述のように、単位領域ごとにデータを読み出す。従って、データ番号が「7」であるパラメータ25Pを主領域41から読み出すと仮定した場合、読み出し制御部124は、単位領域61Dを読み出す。単位領域61Dは、データ番号が「7」であるパラメータ25Pと、データ番号が「8」であるパラメータ25Pを記憶している。 The read control unit 124 reads data for each unit area as described above. Therefore, assuming that the parameter 25P whose data number is "7" is read from the main area 41, the read control unit 124 reads the unit area 61D. The unit area 61D stores a parameter 25P with a data number of "7" and a parameter 25P with a data number of "8".

読み出し制御部124は、データ番号が「7」であるパラメータ25Pを主領域41から読み出す場合、データ番号が「7」であるパラメータ25Pの他に、データ番号が「8」であるパラメータ25Pを読み出す必要がある。データ番号「8」は、ステップS101で特定されるデータ番号「3」~「7」に対応していない。データ番号が「8」であるパラメータ25Pを演算部11に出力した場合、演算部11が誤ったシミュレーションを実行する虞がある。 When reading the parameter 25P with the data number "7" from the main area 41, the read control unit 124 reads the parameter 25P with the data number "8" in addition to the parameter 25P with the data number "7". There is a need. Data number "8" does not correspond to data numbers "3" to "7" specified in step S101. If the parameter 25P whose data number is "8" is output to the calculation unit 11, the calculation unit 11 may perform an erroneous simulation.

そこで、メモリアクセス装置12は、データ番号が「6」~「7」であるパラメータ25Pを副領域42の単位領域62Cから読み出す。データ番号が「6」であるパラメータ25Pは、ステップS101で特定されたデータ番号「3」~「7」に含まれる。つまり、データ番号が「6」~「7」であるパラメータ25Pを副領域42から読み出すことにより、演算部11が誤ったシミュレーションを実行することを防ぐことができる。 Therefore, the memory access device 12 reads out the parameters 25P whose data numbers are “6” to “7” from the unit area 62C of the sub-area 42 . The parameter 25P whose data number is "6" is included in the data numbers "3" to "7" identified in step S101. In other words, by reading the parameters 25P with data numbers "6" to "7" from the sub-area 42, it is possible to prevent the calculation unit 11 from executing an erroneous simulation.

メモリアクセス装置12は、データ番号が「6」~「7」であるパラメータ25Pを副領域42から読み出すことにより、ホストである演算部11が要求していないパラメータ25Pを出力することを防ぐことができる。 By reading the parameters 25P with data numbers "6" to "7" from the sub area 42, the memory access device 12 can prevent the operation unit 11, which is the host, from outputting the parameters 25P not requested. can.

先頭のデータ番号が奇数である場合、先頭のデータ番号に対応するパラメータ25Pが主領域41から読み出される理由を説明する。先頭のデータ番号が奇数である場合、メモリアクセス装置12は、ステップS101で特定されたデータ番号以外の番号のパラメータ25Pを読み出すことを防ぐために、先頭のデータ番号に対応するパラメータ25Pを主領域41から読み出す。 The reason why the parameter 25P corresponding to the leading data number is read from the main area 41 when the leading data number is an odd number will be explained. If the leading data number is an odd number, the memory access device 12 stores the parameter 25P corresponding to the leading data number in the main area 41 in order to prevent the parameter 25P having a number other than the data number specified in step S101 from being read. read from

例えば、ステップS101において、データ番号「3」~「7」が特定されたと仮定する。この仮定において、副領域42における単位領域62Aが読み出し対象に決定された場合、メモリアクセス装置12は、ステップS101において特定されなかったデータ番号「2」のパラメータ25Pを読み出す必要がある。主領域41における単位領域61Bが読み出し対象に決定された場合、メモリアクセス装置12は、ステップS101において特定されなかったデータ番号「2」のパラメータ25Pを読み出さなくてもよい。この結果、メモリアクセス装置12は、ホストである演算部11が要求していないパラメータ25Pを出力することを防ぐことができる。 For example, assume that data numbers "3" to "7" are identified in step S101. In this assumption, if the unit area 62A in the sub-area 42 is determined to be read, the memory access device 12 needs to read the parameter 25P of data number "2" which was not specified in step S101. When the unit area 61B in the main area 41 is determined to be read, the memory access device 12 does not have to read the parameter 25P of the data number "2" that was not specified in step S101. As a result, the memory access device 12 can be prevented from outputting the parameter 25P not requested by the computing section 11, which is the host.

ステップS104の説明に戻る。先頭のデータ番号が偶数である場合(ステップS104においてNo)、判断部122は、メモリ14から読み出すパラメータ25Pの数が奇数であり、かつ、先頭のデータ番号が偶数であることを示す判断情報32を領域決定部123に出力する。 It returns to description of step S104. If the head data number is even (No in step S104), determination unit 122 reads determination information 32 indicating that the number of parameters 25P read from memory 14 is odd and that the head data number is even. is output to the region determination unit 123 .

領域決定部123は、判断部122から受けた判断情報32に基づいて、最後尾のデータ番号を除くデータ番号に対応するパラメータ25Pを、副領域42から読み出すことを決定する(ステップS107)。領域決定部123は、判断部122から受けた判断情報32に基づいて、最後尾のデータ番号に対応するパラメータ25Pを主領域41から読み出すことを決定する(ステップS108)。 Based on the determination information 32 received from the determination unit 122, the region determination unit 123 determines to read the parameters 25P corresponding to the data numbers excluding the last data number from the sub-region 42 (step S107). Based on the judgment information 32 received from the judgment section 122, the area determination section 123 determines to read the parameter 25P corresponding to the last data number from the main area 41 (step S108).

例えば、番号情報31に記録されたデータ番号が「4」~「8」である場合、領域決定部123は、データ番号が「4」~「7」であるパラメータ25Pを副領域42から読み出すことを決定する(ステップS107)。つまり、副領域42に設定された単位領域62B及び62Cが読み出し対象に決定される。 For example, when the data numbers recorded in the number information 31 are "4" to "8", the area determining unit 123 reads the parameters 25P with the data numbers "4" to "7" from the sub area 42. is determined (step S107). That is, the unit areas 62B and 62C set in the sub-area 42 are determined as read targets.

領域決定部123は、データ番号が「7」~「8」であるパラメータ25Pを主領域41から読み出すことを決定する(ステップS108)。つまり、主領域41に設定された単位領域61Dが読み出し対象に決定される。領域決定部123は、読み出し対象に決定された単位領域62B、62C及び61Cの各々のアドレス33を読み出し制御部124に出力する。 The area determination unit 123 determines to read the parameters 25P with data numbers "7" to "8" from the main area 41 (step S108). That is, the unit area 61D set in the main area 41 is determined to be read. The area determination unit 123 outputs the address 33 of each of the unit areas 62B, 62C, and 61C determined to be read targets to the read control unit 124 .

読み出し制御部124は、領域決定部123から受けたアドレス33を用いて、パラメータ25Pをメモリ14から読み出す(ステップS109)。読み出し制御部124は、読み出したパラメータ25Pを演算部11に出力する。この結果、データ番号が「7」であるパラメータ25Pが、主領域41及び副領域42の各々から読み出される。演算部11は、上述のように、重複して受けたパラメータのうち一方を破棄する。これにより、先頭のデータ番号が奇数であり、かつ、読み出すパラメータの数が奇数である場合と同様に、ホストである演算部11が要求していないパラメータ25Pを出力することを防ぐことができる。 The read control unit 124 uses the address 33 received from the area determination unit 123 to read the parameter 25P from the memory 14 (step S109). The read control unit 124 outputs the read parameters 25P to the calculation unit 11 . As a result, the parameter 25P whose data number is “7” is read from each of the main area 41 and the sub-area 42 . The computing unit 11 discards one of the parameters received in duplicate, as described above. As a result, similarly to the case where the head data number is an odd number and the number of parameters to be read is an odd number, it is possible to prevent the computing unit 11, which is the host, from outputting parameters 25P not requested.

(読み出すパラメータ25Pの数が偶数である場合)
読み出すパラメータ25Pの数が偶数である場合(ステップS103においてNo)におけるメモリアクセス装置12の動作を説明する。この場合、判断部122は、ステップS102で特定された先頭のデータ番号が奇数であるか否かを判断する(ステップS110)。
(When the number of parameters 25P to be read is an even number)
The operation of the memory access device 12 when the number of parameters 25P to be read is an even number (No in step S103) will be described. In this case, the determination unit 122 determines whether or not the top data number identified in step S102 is an odd number (step S110).

先頭のデータ番号が奇数である場合(ステップS110においてYes)、判断部122は、読み出すパラメータの数が偶数であり、かつ、先頭のデータ番号が奇数であることを示す判断情報32を領域決定部123に出力する。 If the leading data number is an odd number (Yes in step S110), determination unit 122 sends determination information 32 indicating that the number of parameters to be read is an even number and that the leading data number is odd. 123.

領域決定部123は、判断部122から受けた判断情報32に基づいて、番号情報31に記録されたデータ番号に対応するパラメータ25Pを、主領域41から読み出すことを決定する(ステップS111)。例えば、番号情報31に記録されたデータ番号が「3」~「10」である場合、領域決定部123は、単位領域61B~61Eを読み出し対象に決定する。領域決定部123は、読み出し対象に決定した単位領域61B~61Eに対応するアドレス33を読み出し制御部124に出力する。 Based on the determination information 32 received from the determination unit 122, the area determination unit 123 determines to read the parameter 25P corresponding to the data number recorded in the number information 31 from the main area 41 (step S111). For example, when the data numbers recorded in the number information 31 are "3" to "10", the area determination unit 123 determines the unit areas 61B to 61E as read targets. The area determination unit 123 outputs the addresses 33 corresponding to the unit areas 61B to 61E determined as read targets to the read control unit 124 .

このように、読み出すパラメータ25Pの数が偶数であり、かつ、先頭のデータ番号が偶数である場合、メモリアクセス装置12は、パラメータ25Pを副領域42から読み出さない。メモリアクセス装置12は、副領域42にアクセスすることなく、ステップS101で特定されたデータ番号に対応する全てのパラメータ25Pを読み出すことができるためである。 Thus, when the number of parameters 25P to be read is even and the top data number is even, the memory access device 12 does not read the parameters 25P from the sub-area . This is because the memory access device 12 can read all the parameters 25P corresponding to the data numbers identified in step S101 without accessing the sub-area 42. FIG.

先頭のデータ番号が偶数である場合(ステップS110においてNo)、判断部122は、読み出すパラメータの数が偶数であり、かつ、先頭のデータ番号が偶数であることを示す判断情報32を領域決定部123に出力する。 If the head data number is an even number (No in step S110), determination unit 122 sends determination information 32 indicating that the number of parameters to be read is an even number and that the head data number is even. 123.

領域決定部123は、判断部122から受けた判断情報32に基づいて、番号情報31に記録されたデータ番号に対応するパラメータ25Pを、副領域42から読み出すことを決定する(ステップS112)。例えば、番号情報31に記録されたデータ番号が「2」~「9」である場合、領域決定部123は、単位領域62A~62Dを読み出し対象に決定する。この場合、メモリアクセス装置12は、ステップS101で特定されたデータ番号に対応する全てのパラメータ25Pを副領域42から読み出すことができる。メモリアクセス装置12は、パラメータ25Pを読み出すために主領域41にアクセスしなくてもよい。 Based on the determination information 32 received from the determination unit 122, the area determination unit 123 determines to read the parameter 25P corresponding to the data number recorded in the number information 31 from the sub-area 42 (step S112). For example, when the data numbers recorded in the number information 31 are "2" to "9", the area determination unit 123 determines the unit areas 62A to 62D as read targets. In this case, the memory access device 12 can read from the sub-area 42 all the parameters 25P corresponding to the data number specified in step S101. Memory access device 12 does not have to access main area 41 to read parameter 25P.

読み出し制御部124は、領域決定部123から受けたアドレスを用いて、ステップS111又はS112で決定された単位領域からパラメータ25Pを読み出す(ステップS109)。 The read control unit 124 uses the address received from the area determination unit 123 to read the parameter 25P from the unit area determined in step S111 or S112 (step S109).

先頭のデータ番号が偶数である場合、先頭のデータ番号に対応するパラメータ25Pが副領域42から読み出される理由を説明する。先頭のデータ番号が偶数である場合、メモリアクセス装置12は、ステップS101で特定されたデータ番号以外の番号のパラメータ25Pを読み出すことを防ぐために、先頭のデータ番号に対応するパラメータ25Pを副領域42から読み出す。 The reason why the parameter 25P corresponding to the leading data number is read from the sub-area 42 when the leading data number is an even number will be explained. If the leading data number is an even number, the memory access device 12 stores the parameter 25P corresponding to the leading data number in the sub-area 42 in order to prevent the parameter 25P with a number other than the data number specified in step S101 from being read. read from

例えば、ステップS101において、データ番号「4」~「8」が特定されたと仮定する。この仮定において、主領域41における単位領域61Bが読み出し対象に決定された場合、メモリアクセス装置12は、ステップS101において特定されなかったデータ番号「3」のパラメータ25Pを読み出す必要がある。副領域42における単位領域62Bが読み出し対象に決定された場合、メモリアクセス装置12は、データ番号「3」のパラメータ25Pを読み出さなくてもよい。この結果、メモリアクセス装置12は、ホストである演算部11が要求していないパラメータ25Pを出力することを防ぐことができる。 For example, assume that data numbers "4" to "8" are identified in step S101. In this assumption, when the unit area 61B in the main area 41 is determined to be read, the memory access device 12 needs to read the parameter 25P of data number "3" which was not specified in step S101. When the unit area 62B in the sub-area 42 is determined to be read, the memory access device 12 does not have to read the parameter 25P with the data number "3". As a result, the memory access device 12 can be prevented from outputting the parameter 25P not requested by the computing section 11, which is the host.

以上説明したように、メモリアクセス装置12は、連続する2つのパラメータ25Pを読み出す場合、読み出し対象のパラメータ25Pにおける先頭のデータ番号と、読み出し対象のパラメータ25Pの数とを特定する。メモリアクセス装置12は、特定した先頭のデータ番号と、特定したパラメータ25Pの数とに基づいて、パラメータ25Pを主領域41及び副領域42のどちらから読み出すかを決定する。 As described above, when reading two consecutive parameters 25P, the memory access device 12 identifies the first data number in the parameters 25P to be read and the number of parameters 25P to be read. The memory access device 12 determines from which of the main area 41 or the sub area 42 to read the parameters 25P based on the specified first data number and the number of specified parameters 25P.

これにより、メモリアクセス装置12は、連続するパラメータ25Pを高速にメモリ14から読み出すことができる。以下、メモリアクセス装置12が連続するパラメータ25Pを高速に読み出すことができる理由をさらに詳しく説明する。 Thereby, the memory access device 12 can read the consecutive parameters 25P from the memory 14 at high speed. The reason why the memory access device 12 can read the continuous parameters 25P at high speed will be described in more detail below.

1つの単位領域が複数のバンクにより設定されている場合、データの読み出しに遅延が発生する。図7は、複数のバンクにより設定された単位領域を含むメモリの一例を示す図である。 When one unit area is set by a plurality of banks, a delay occurs in reading data. FIG. 7 is a diagram showing an example of a memory including unit areas set by a plurality of banks.

図7を参照して、メモリ14aは、アドレスが「2001」から「2010」までのアドレス空間を有する。単位領域63A~63Eがメモリ14aに設定されている。単位領域63A及び63Dの各々は、バンク141及び142に設定される。単位領域63B及び63Eの各々は、バンク142及び143に設定される。単位領域63Cは、バンク143及び141に設定される。 Referring to FIG. 7, memory 14a has an address space from "2001" to "2010". Unit areas 63A to 63E are set in the memory 14a. Unit regions 63A and 63D are set in banks 141 and 142, respectively. Unit regions 63B and 63E are set in banks 142 and 143, respectively. The unit area 63C is set in the banks 143 and 141. FIG.

単位領域63Aに記憶されるパラメータ25Pのデータ番号は、「1」~「2」である。単位領域63Bに記憶されるパラメータ25Pのデータ番号は、「3」~「4」である。単位領域63Cに記憶されるパラメータ25Pのデータ番号は、「5」~「6」である。単位領域63Dに記憶されるパラメータ25Pのデータ番号は、「7」~「8」である。単位領域63Eに記憶されるパラメータ25Pのデータ番号は、「9」~「10」である。 The data numbers of the parameters 25P stored in the unit area 63A are "1" to "2". The data numbers of the parameters 25P stored in the unit area 63B are "3" to "4". The data numbers of the parameters 25P stored in the unit area 63C are "5" to "6". The data numbers of the parameters 25P stored in the unit area 63D are "7" to "8". The data numbers of the parameters 25P stored in the unit area 63E are "9" to "10".

データ番号「1」~「4」のパラメータ25Pを図7に示すメモリ14aから読み出す場合におけるメモリアクセス装置12の動作を説明する。メモリアクセス装置12は、上述のように、パラメータ25Pを単位領域ごとにメモリ14aから読み出す。 The operation of the memory access device 12 when reading the parameters 25P with data numbers "1" to "4" from the memory 14a shown in FIG. 7 will be described. The memory access device 12 reads the parameter 25P from the memory 14a for each unit area as described above.

最初に、読み出し制御部124は、単位領域63Aの読み出しをメモリコントローラ13に指示する。メモリコントローラ13は、バンク141にアクセスしてデータ番号が「1」であるパラメータ25Pを読み出し、バンク142にアクセスしてデータ番号が「2」であるパラメータ25Pを読み出す。 First, the read control unit 124 instructs the memory controller 13 to read the unit area 63A. The memory controller 13 accesses the bank 141 to read the parameter 25P whose data number is "1", and accesses the bank 142 to read the parameter 25P whose data number is "2".

次に、読み出し制御部124は、単位領域63Bの読み出しをメモリコントローラ13に指示する。メモリコントローラ13は、単位領域63Aの読み出しと同様に、単位領域63Bを読み出すために、バンク142及び143にアクセスする。 Next, the read control unit 124 instructs the memory controller 13 to read the unit area 63B. The memory controller 13 accesses the banks 142 and 143 to read the unit area 63B in the same manner as the unit area 63A.

メモリコントローラ13は、単位領域を読み出すたびに、複数のバンクにアクセスしなければならない。この結果、往復遅延時間が長くなり、パラメータ25Pの読み出し効率が低下する。往復遅延時間は、メモリアクセス装置12がパラメータ25Pの読み出しを指示してから、パラメータ25Pを取得するまでの時間である。 The memory controller 13 must access multiple banks each time it reads a unit area. As a result, the round-trip delay time increases and the efficiency of reading the parameter 25P decreases. The round-trip delay time is the time from when the memory access device 12 instructs to read the parameter 25P to when the parameter 25P is acquired.

これに対して、メモリ14は、主領域41及び副領域42を含む。主領域41及び副領域42は、複数の単位領域を含む。各単位領域は、バンク141~143のうちいずれか1つに設定され、連続する2つのパラメータ25Pを記憶する。主領域41に設定される単位領域において、先頭のデータ番号は奇数である。副領域42に設定される単位領域において、先頭のデータ番号は偶数である。 In contrast, memory 14 includes a primary area 41 and a secondary area 42 . The main region 41 and the subregion 42 include multiple unit regions. Each unit area is set in one of the banks 141 to 143 and stores two consecutive parameters 25P. In the unit area set in the main area 41, the top data number is an odd number. In the unit area set in the sub-area 42, the top data number is an even number.

先頭のデータ番号が奇数である場合、最後尾のデータ番号を除くデータ番号に対応するデータを主領域41から読み出す。先頭のデータ番号が偶数である場合、最後尾のデータ番号を除くデータ番号に対応するデータを副領域42から読み出す。これにより、メモリアクセス装置12は、単位領域からデータを読み出すたびに、複数のバンクにアクセスしなくてもよいため、パラメータ25Pを高速に読み出すことが可能となる。 If the leading data number is an odd number, the data corresponding to the data number excluding the trailing data number is read from the main area 41 . If the leading data number is an even number, the data corresponding to the data number excluding the trailing data number is read from the sub-area 42 . As a result, the memory access device 12 does not have to access a plurality of banks each time data is read from the unit area, so the parameter 25P can be read at high speed.

[2.2.パラメータ25Pの書き込み]
図8は、パラメータ25Pをメモリ14に書き込むメモリアクセス装置12の動作を示すフローチャートである。以下、図4及び図8を参照しながら、パラメータ25Pを書き込むメモリアクセス装置12の動作を説明する。
[2.2. Write parameter 25P]
FIG. 8 is a flow chart showing the operation of the memory access device 12 for writing the parameter 25P to the memory 14. As shown in FIG. The operation of the memory access device 12 for writing the parameter 25P will be described below with reference to FIGS. 4 and 8. FIG.

メモリアクセス装置12において、書き込み制御部125は、メモリコントローラ13を介して、メモリ14のアドレス空間を設定する(ステップS201)。具体的には、書き込み制御部125は、連続する2つの論理アドレスが1つのバンクに割り当てられるように、アドレス空間を設定する。例えば、図4を参照して、書き込み制御部125は、論理アドレス「0001」及び「0002」をバンク141に割り当て、論理アドレス「2001」及び「2002」をバンク141に割り当てる。 In the memory access device 12, the write controller 125 sets the address space of the memory 14 via the memory controller 13 (step S201). Specifically, the write control unit 125 sets the address space so that two consecutive logical addresses are assigned to one bank. For example, referring to FIG. 4, write control unit 125 assigns logical addresses “0001” and “0002” to bank 141 and assigns logical addresses “2001” and “2002” to bank 141 .

書き込み制御部125は、ステップS201で設定された論理アドレスのうち、連続する2つの論理アドレスを単位領域に設定する(ステップS202)。連続する2つの論理アドレスとは、ステップS201において同一のバンクに設定されたアドレスである。この結果、図4に示すように、単位領域61及び62が設定される。 The write control unit 125 sets two consecutive logical addresses among the logical addresses set in step S201 to the unit area (step S202). Two consecutive logical addresses are addresses set in the same bank in step S201. As a result, unit areas 61 and 62 are set as shown in FIG.

書き込み制御部125は、ステップS202で設定された単位領域を主領域41及び副領域42のいずれか一方に割り当てる(ステップS203)。本実施の形態では、論理アドレスが連続する複数の単位領域が、図4に示すように、主領域41又は副領域42に割り当てられる。しかし、主領域41又は副領域42に割り当てられる単位領域の論理アドレスが不連続であることは妨げられない。 The write control unit 125 allocates the unit area set in step S202 to either the main area 41 or the sub area 42 (step S203). In this embodiment, a plurality of unit areas with consecutive logical addresses are assigned to the main area 41 or the sub area 42 as shown in FIG. However, it is not prevented that the logical addresses of the unit areas assigned to the main area 41 or the subarea 42 are discontinuous.

書き込み制御部125は、ステップS203において主領域41に設定された単位領域61に、データ番号「1」~「360」のパラメータ25Pを書き込む(ステップS204)。このとき、書き込み制御部125は、データ番号が連続する2つのパラメータ25Pを単位領域61に書き込む。単位領域61の先頭アドレスに書き込まれるパラメータ25Pのデータ番号は、奇数である。単位領域61の論理アドレスが連続している場合、パラメータ25Pが格納される記憶領域の論理アドレスは、図4に示すように、データ番号の増加に伴って増加する。 The write controller 125 writes the parameters 25P with data numbers "1" to "360" in the unit area 61 set in the main area 41 in step S203 (step S204). At this time, the write control unit 125 writes two parameters 25P having consecutive data numbers to the unit area 61 . The data number of the parameter 25P written to the top address of the unit area 61 is an odd number. When the logical addresses of the unit area 61 are consecutive, the logical address of the storage area storing the parameter 25P increases as the data number increases, as shown in FIG.

書き込み制御部125は、ステップS203において副領域42に設定された単位領域62に、データ番号「2」~「360」のパラメータ25Pを書き込む(ステップS205)。このとき、書き込み制御部125は、データ番号が連続する2つのパラメータ25Pを単位領域62に書き込む。単位領域62の先頭アドレスに書き込まれるパラメータ25Pのデータ番号は、偶数である。単位領域62の論理アドレスが連続している場合、パラメータ25Pが格納される記憶領域の論理アドレスは、図4に示すように、データ番号の増加に伴って増加する。 The write control unit 125 writes the parameters 25P with data numbers "2" to "360" in the unit area 62 set in the sub area 42 in step S203 (step S205). At this time, the write control unit 125 writes two parameters 25P having consecutive data numbers into the unit area 62 . The data number of the parameter 25P written to the top address of the unit area 62 is an even number. When the logical addresses of the unit area 62 are consecutive, the logical address of the storage area storing the parameter 25P increases as the data number increases, as shown in FIG.

書き込み制御部125は、一のパラメータ25Pのデータ番号を、一のパラメータ25Pが書き込まれた論理アドレスと対応付ける(ステップS206)。ステップS206の結果、アドレスデータ34が生成される。書き込み制御部125は、生成されたアドレスデータ34を領域決定部123に出力する。その後、書き込み制御部125は、図8に示す書き込み処理を終了する。 The write control unit 125 associates the data number of one parameter 25P with the logical address in which the one parameter 25P is written (step S206). As a result of step S206, address data 34 is generated. The write control section 125 outputs the generated address data 34 to the area determining section 123 . After that, the write control unit 125 terminates the write processing shown in FIG.

書き込み制御部125が図8に示すフローチャートに基づいてパラメータ25Pをメモリ14に書き込むことにより、読み出し制御部124は、図6に示す処理を実行することが可能となる。つまり、書き込み制御部125は、読み出し制御部124がバンクへのアクセス回数を削減できるように、パラメータ25Pをメモリに書き込むことができる。 The write control unit 125 writes the parameter 25P into the memory 14 based on the flowchart shown in FIG. 8, so that the read control unit 124 can execute the processing shown in FIG. That is, the write control unit 125 can write the parameter 25P into the memory so that the read control unit 124 can reduce the number of bank accesses.

[変形例]
上記実施の形態では、複数のパラメータ25Pがメモリ14に書き込まれる例を説明したが、これに限定されない。メモリ14に書き込まれるデータは、特に限定されない。つまり、メモリ14に書き込まれるデータは、1~N(Nは3以上の自然数)のデータ番号が付された第1~第Nデータであればよい。主領域41は、第1~第Nデータを記憶し、各々が複数のバンクのいずれか1つに設定された複数の単位領域61を含む。副領域42は、第2~第Nデータを記憶し、各々が前記複数のバンクのいずれか1つに設定された複数の単位領域62を含む。
[Modification]
Although an example in which a plurality of parameters 25P are written in the memory 14 has been described in the above embodiment, the present invention is not limited to this. Data written to the memory 14 is not particularly limited. That is, the data to be written in the memory 14 may be the first to N-th data with data numbers 1 to N (N is a natural number of 3 or more). The main area 41 stores 1st to Nth data and includes a plurality of unit areas 61 each set in one of a plurality of banks. The sub-region 42 stores the 2nd to N-th data and includes a plurality of unit regions 62 each set in one of the plurality of banks.

上記実施の形態では、メモリアクセス装置12が、シミュレータ1に搭載される例を示したが、これに限定されない。メモリアクセス装置12は、メモリ14を搭載する情報処理機器に搭載されればよい。 Although the memory access device 12 is mounted on the simulator 1 in the above embodiment, it is not limited to this. The memory access device 12 may be installed in an information processing device in which the memory 14 is installed.

上記実施の形態では、メモリ14が、RAMである例を説明したが、これに限定されない。メモリ14は、メモリアクセス装置12がデータの書き込みと読み出し可能な記憶装置であれば、メモリ14の種類は特に限定されない。 In the above embodiment, an example in which the memory 14 is a RAM has been described, but the present invention is not limited to this. The type of the memory 14 is not particularly limited as long as the memory access device 12 is a storage device to which data can be written and read.

また、上記実施の形態において、メモリアクセス装置12の各機能ブロックは、LSIなどの半導体装置により個別に1チップ化されてもよいし、一部又は全部を含むように1チップ化されてもよい。ここでは、LSIとしたが、集積度の違いにより、IC、システムLSI、スーパーLSI、ウルトラLSIと呼称されることもある。 Further, in the above embodiment, each functional block of the memory access device 12 may be individually integrated into one chip by a semiconductor device such as LSI, or may be integrated into one chip so as to include part or all of them. . Although LSI is used here, it may also be called IC, system LSI, super LSI, or ultra LSI depending on the degree of integration.

集積回路化の手法はLSIに限るものではなく、専用回路又は汎用プロセサで実現してもよい。LSI製造後に、プログラムすることが可能なFPGA(Field Programmable Gate Array)や、LSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。 The method of circuit integration is not limited to LSI, and may be realized by a dedicated circuit or a general-purpose processor. An FPGA (Field Programmable Gate Array) that can be programmed after the LSI is manufactured, or a reconfigurable processor that can reconfigure the connections and settings of the circuit cells inside the LSI may be used.

また、メモリアクセス装置12により実行される処理の一部または全部は、プログラムにより実現されてもよい。そして、上記各実施の形態の各機能ブロックの処理の一部または全部は、コンピュータにおいて、中央演算装置(CPU)により行われる。また、それぞれの処理を行うためのプログラムは、ハードディスク、ROMなどの記憶装置に格納されており、ROMにおいて、あるいはRAMに読み出されて実行される。 Also, part or all of the processing executed by the memory access device 12 may be realized by a program. Part or all of the processing of each functional block in each of the above embodiments is performed by a central processing unit (CPU) in a computer. A program for performing each process is stored in a storage device such as a hard disk or ROM, and is read from the ROM or RAM and executed.

また、上記実施の形態の各処理をハードウェアにより実現してもよいし、ソフトウェア(OS(オペレーティングシステム)、ミドルウェア、あるいは、所定のライブラリとともに実現される場合を含む。)により実現してもよい。さらに、ソフトウェアおよびハードウェアの混在処理により実現しても良い。 Further, each process of the above embodiment may be realized by hardware, or may be realized by software (including cases where it is realized together with an OS (operating system), middleware, or a predetermined library). . Furthermore, it may be realized by mixed processing of software and hardware.

例えば、メモリアクセス装置12の各機能ブロックを、ソフトウェアにより実現する場合、図9に示したハードウェア構成(例えば、CPU、ROM、RAM(メモリ14)、入力部、出力部等をバスBusにより接続したハードウェア構成)を用いて、各機能部をソフトウェア処理により実現するようにしてもよい。 For example, when each functional block of the memory access device 12 is implemented by software, the hardware configuration shown in FIG. Each functional unit may be realized by software processing using a hardware configuration that is described in the above).

また、上記実施の形態における処理方法の実行順序は、上記実施の形態の記載に制限されるものではなく、発明の要旨を逸脱しない範囲で実行順序を入れ替えてもよい。 Also, the execution order of the processing methods in the above embodiments is not limited to the description of the above embodiments, and the execution order may be changed without departing from the spirit of the invention.

前述した方法をコンピュータに実行させるコンピュータプログラム及びそのプログラムを記録したコンピュータ読み取り可能な記録媒体は、本発明の範囲に含まれる。ここで、コンピュータ読み取り可能な記録媒体としては、例えば、フレキシブルディスク、ハードディスク、CD-ROM、MO、DVD、DVD-ROM、DVD-RAM、大容量DVD、次世代DVD、半導体メモリを挙げることができる。 A computer program that causes a computer to execute the method described above and a computer-readable recording medium that records the program are included in the scope of the present invention. Examples of computer-readable recording media include flexible disks, hard disks, CD-ROMs, MOs, DVDs, DVD-ROMs, DVD-RAMs, large-capacity DVDs, next-generation DVDs, and semiconductor memories. .

以上、本発明の実施の形態を説明したが、上述した実施の形態は本発明を実施するための例示に過ぎない。よって、本発明は上述した実施の形態に限定されることなく、その趣旨を逸脱しない範囲内で上述した実施の形態を適宜変形して実施することが可能である。 Although the embodiments of the present invention have been described above, the above-described embodiments are merely examples for carrying out the present invention. Therefore, the present invention is not limited to the above-described embodiment, and can be implemented by appropriately modifying the above-described embodiment without departing from the spirit of the present invention.

1 シミュレータ
11 演算部
12 メモリアクセス装置
13 メモリコントローラ
14 メモリ
121 データ番号特定部
122 判断部
123 領域決定部
124 読み出し制御部
125 書き込み制御部
1 Simulator 11 Operation Unit 12 Memory Access Device 13 Memory Controller 14 Memory 121 Data Number Identification Unit 122 Judgment Unit 123 Area Determination Unit 124 Read Control Unit 125 Write Control Unit

Claims (5)

メモリにアクセスするメモリアクセス装置であって、
前記メモリは、
1~N(Nは3以上の自然数)のデータ番号が付された第1~第Nデータを記憶し、各々が複数のバンクのいずれか1つに設定された複数の単位領域を含む主領域と、
第2~第Nデータを記憶し、各々が前記複数のバンクのいずれか1つに設定された複数の単位領域を含む副領域とを備え、
前記主領域の単位領域の各々は、先頭データのデータ番号が奇数であってデータ番号が連続する2つのデータを記憶し、
前記副領域の単位領域の各々は、先頭データのデータ番号が偶数であってデータ番号が連続する2つのデータを記憶し、
前記メモリアクセス装置は、
前記第1~第Nデータのうち連続する2以上のデータを読み出す場合、前記2以上のデータのデータ番号のうち最小のデータ番号が奇数であるか否かを判断する判断部と、
前記最小のデータ番号が奇数であると前記判断部により判断された場合に前記2以上のデータを前記主領域の単位領域から読み出すことを決定し、前記最小のデータ番号が偶数であると前記判断部により判断された場合、前記2以上のデータを前記副領域の単位領域から読み出すことを決定する領域決定部と、
前記領域決定部により決定された単位領域から前記2以上のデータを読み出す読み出し制御部と、を備えるメモリアクセス装置。
A memory access device for accessing memory,
The memory is
a main area that stores first to Nth data with data numbers of 1 to N (N is a natural number of 3 or more) and includes a plurality of unit areas each set in one of a plurality of banks; and,
a sub-region storing second to N-th data and including a plurality of unit regions each set in one of the plurality of banks;
each of the unit areas of the main area stores two pieces of data in which the data number of the leading data is an odd number and the data numbers are consecutive;
each of the unit areas of the sub-area stores two pieces of data in which the data number of the head data is an even number and the data numbers are consecutive;
The memory access device
a judging unit for judging whether or not the smallest data number among the data numbers of the two or more data is an odd number when reading two or more consecutive data out of the first to Nth data;
determining that the two or more pieces of data are read from the unit area of the main area when the determination unit determines that the minimum data number is an odd number, and determining that the minimum data number is an even number; an area determination unit that determines to read the two or more pieces of data from the unit area of the sub-area if determined by the unit;
a read control unit that reads the two or more pieces of data from the unit area determined by the area determination unit.
請求項1に記載のメモリアクセス装置であって、
前記判断部は、前記2以上のデータの数が奇数であるか否かを判断し、
前記最小のデータ番号が奇数であり、かつ、前記2以上のデータの数が奇数であると前記判断部により判断された場合、前記領域決定部は、前記2以上のデータのデータ番号のうち最大のデータ番号を除くデータ番号に対応するデータを前記主領域の単位領域から読み出し、前記最大のデータ番号に対応するデータを前記副領域の単位領域から読み出す、メモリアクセス装置。
2. The memory access device according to claim 1, comprising:
The determination unit determines whether the number of the two or more data is an odd number,
If the determining unit determines that the minimum data number is an odd number and that the number of data of 2 or more is an odd number, the area determination unit determines that the data number of the data of 2 or more is the maximum reading data corresponding to the data numbers other than the data number from the unit area of the main area, and reading data corresponding to the maximum data number from the unit areas of the sub areas.
請求項1又は2に記載のメモリアクセス装置であって、
前記判断部は、前記2以上のデータの数が奇数であるか否かを判断し、
前記最小のデータ番号が偶数であり、かつ、前記2以上のデータの数が奇数であると前記判断部により判断された場合、前記領域決定部は、前記2以上のデータのデータ番号のうち最大のデータ番号を除くデータ番号に対応するデータを前記副領域の単位領域から読み出し、前記最大のデータ番号に対応するデータを前記主領域の単位領域から読み出す、メモリアクセス装置。
3. The memory access device according to claim 1 or 2,
The determination unit determines whether the number of the two or more data is an odd number,
If the determination unit determines that the minimum data number is an even number and that the number of data equal to or greater than 2 is an odd number, the region determination unit selects the maximum data number of the data equal to or greater than 2. reading data corresponding to the data numbers other than the data number from the unit area of the sub area, and reading data corresponding to the maximum data number from the unit area of the main area.
請求項1~3のいずれか1項に記載のメモリアクセス装置であって、さらに、
前記第1~第Nデータのうち先頭データのデータ番号が奇数であってデータ番号が連続する2つのデータを前記主領域の単位領域に書き込み、前記第2~第Nデータのうち先頭データのデータ番号が偶数であってデータ番号が連続する2つのデータを前記副領域の単位領域に書き込む書き込み制御部、を備えるメモリアクセス装置。
The memory access device according to any one of claims 1 to 3, further comprising:
Two pieces of data having an odd data number of the leading data among the first to Nth data and consecutive data numbers are written in the unit area of the main area, and the data of the leading data among the second to Nth data. A memory access device comprising a write control unit that writes two pieces of data having even numbers and consecutive data numbers into the unit area of the sub-area.
1~N(Nは3以上の自然数)のデータ番号が付された第1~第Nデータを記憶し、各々が複数のバンクのいずれか1つに設定された複数の単位領域を含む主領域と、第2~第Nデータを記憶し、各々が前記複数のバンクのいずれか1つに設定された複数の単位領域を含む副領域とを備えるメモリアクセス方法であって、
前記主領域の単位領域の各々は、先頭データのデータ番号が奇数であってデータ番号が連続する2つのデータを記憶し、
前記副領域の単位領域の各々は、先頭データのデータ番号が偶数であってデータ番号が連続する2つのデータを記憶し、
前記メモリアクセス方法は、
前記メモリに記憶されたデータの読み出し指示を受け付けるステップと、
第1~第Nデータのうち連続する2以上のデータの読み出し指示を受け付けた場合、前記2以上のデータのデータ番号のうち最小のデータ番号が奇数であるか否かを判断するステップと、
前記最小のデータ番号が奇数であると判断された場合に前記2以上のデータを前記主領域の単位領域から読み出し、前記最小のデータ番号が偶数であると判断された場合、前記2以上のデータを前記副領域の単位領域から読み出すステップと、を備えるメモリアクセス方法。
a main area that stores first to Nth data with data numbers of 1 to N (N is a natural number of 3 or more) and includes a plurality of unit areas each set in one of a plurality of banks; and a sub-area storing second to N-th data and including a plurality of unit areas each set in one of the plurality of banks, wherein
each of the unit areas of the main area stores two pieces of data in which the data number of the leading data is an odd number and the data numbers are consecutive;
each of the unit areas of the sub-area stores two pieces of data in which the data number of the head data is an even number and the data numbers are consecutive;
The memory access method includes:
receiving an instruction to read data stored in the memory;
determining whether or not the smallest data number among the data numbers of the two or more data is an odd number, when an instruction to read two or more consecutive data out of the first to Nth data is received;
When the minimum data number is determined to be an odd number, the data of 2 or more are read from the unit area of the main area, and when the minimum data number is determined to be an even number, the data of 2 or more from the unit area of the sub-area.
JP2019158103A 2019-08-30 2019-08-30 memory access device Active JP7260444B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2019158103A JP7260444B2 (en) 2019-08-30 2019-08-30 memory access device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019158103A JP7260444B2 (en) 2019-08-30 2019-08-30 memory access device

Publications (2)

Publication Number Publication Date
JP2021036394A JP2021036394A (en) 2021-03-04
JP7260444B2 true JP7260444B2 (en) 2023-04-18

Family

ID=74716773

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019158103A Active JP7260444B2 (en) 2019-08-30 2019-08-30 memory access device

Country Status (1)

Country Link
JP (1) JP7260444B2 (en)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0784871A (en) * 1993-09-20 1995-03-31 Fujitsu Ltd Access circuit for memory for successive address data
JP2015082166A (en) * 2013-10-22 2015-04-27 ルネサスエレクトロニクス株式会社 Method for managing data storage flash memory and program therefor

Also Published As

Publication number Publication date
JP2021036394A (en) 2021-03-04

Similar Documents

Publication Publication Date Title
JP4902547B2 (en) Data processing apparatus and method for flash memory
JP4889357B2 (en) Test apparatus, program, and test method
US9128824B2 (en) In-place change between transient and persistent state for data structures on non-volatile memory
JP3168839B2 (en) Logic emulation system and equivalent circuit generation method
US11455781B2 (en) Data reading/writing method and system in 3D image processing, storage medium and terminal
CN113391881B (en) Interrupt management method and device, electronic equipment and computer storage medium
JP2019536146A (en) Programmable clock monitor
KR20220152566A (en) Memory Defect Map for Accelerated Neural Networks
JP5029096B2 (en) Power supply noise model generation method and power supply noise model generation apparatus
JP7260444B2 (en) memory access device
WO2018165939A1 (en) Flash data compression decompression method and apparatus
CN114880181B (en) Memory test method and device
CN110851162A (en) SSD (solid State disk) firmware upgrading method and device compatible with RAID and non-RAID
JP5918192B2 (en) Data processing apparatus and method in PLC system
US20010011363A1 (en) Circuit synthesis method
US11360713B2 (en) Semiconductor device and debug system
CN109145338A (en) A kind of method and device for repairing voltage drop
JP6862951B2 (en) Memory control device, information processing device and memory control method
TWI733964B (en) System for testing whole memory and method thereof
US20110209108A1 (en) Device, Method, and Computer Program for LSI Design, and LSI
WO2021200222A1 (en) Specification description program and specification description method
JP2005301743A (en) Testing method for testing device having master connected to a plurality of slaves through bus
US11604717B2 (en) Processor performance measurement apparatus and processor performance measurement method
US11634895B2 (en) Dynamically re-configurable in-field self-test capability for automotive systems
CN112286468B (en) Access control method and device of storage device and electronic equipment

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220331

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230307

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230406

R150 Certificate of patent or registration of utility model

Ref document number: 7260444

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150