JP7260444B2 - memory access device - Google Patents
memory access device Download PDFInfo
- 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
Links
- 230000015654 memory Effects 0.000 title claims description 150
- 238000000034 method Methods 0.000 claims description 8
- 238000004364 calculation method Methods 0.000 description 24
- 238000010586 diagram Methods 0.000 description 12
- 238000004088 simulation Methods 0.000 description 12
- 238000012545 processing Methods 0.000 description 10
- 238000004891 communication Methods 0.000 description 5
- 238000006243 chemical reaction Methods 0.000 description 3
- 230000004907 flux Effects 0.000 description 3
- 238000004904 shortening Methods 0.000 description 3
- 230000010354 integration Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 238000004590 computer program Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
Images
Classifications
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy 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,
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.
上記問題点に鑑み、本発明は、データの読み出し時間を短縮することができるメモリアクセス装置を提供することを目的とする。 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
第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
第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.
以下、図面を参照し、本発明の実施の形態を詳しく説明する。図中同一又は相当部分には同一符号を付してその説明は繰り返さない。 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
シミュレータ1は、ECU2と接続される。シミュレータ1は、ECU2から出力される制御信号に従って、車両に搭載されるモータ及びインバータの動作を模擬演算する。
ECU2は、シミュレーションシステム100における評価対象である。ECU2は、中継装置4を介してユーザ端末3から動作指示を取得し、取得した動作指示に応じた制御信号をシミュレータ1に出力する。
The
ユーザ端末3は、ECU2の評価者が使用するコンピュータである。ユーザ端末3は、中継装置4を介してシミュレータ1及びECU2に動作指示を出力する。ユーザ端末3は、中継装置4を介してシミュレータ1から模擬演算結果を取得し、その取得した模擬演算結果を図示しないモニタに表示する。
The
中継装置4は、シミュレータ1とユーザ端末3との間の通信を中継し、ECU2とユーザ端末3との間の通信を中継する。
The
シミュレーションシステム100において、装置間の通信方式は特に限定されない。例えば、シミュレータ1は、CAN(Controller Area Network)を用いてECU2と通信する。中継装置4は、LAN(Local Area Network)を用いて、シミュレータ1及びユーザ端末と通信する。中継装置4は、図示しないプロトコル変換装置を介して、ECU2と通信する。プロトコル変換装置は、LANに準拠した通信とCANに準拠した通信とを相互に変換する。中継装置4は、LANを用いてプロトコル変換装置と通信する。ECU2は、CANを用いてプロトコル変換装置と通信する。
In the
[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
演算部11は、ECU2からPWM(Pulse Width Modulation)信号22Vを受け、その受けたPWM信号22Vに基づいて、車両に搭載されるインバータ及びモータの動作をシミュレーションする。
The
具体的には、演算部11は、その受けたPWM信号22Vに基づいて、インバータの動作をシミュレーションする。PWM信号22Vは、インバータが直流から三相交流を生成するための制御信号であり、U相、V相及びW相の各々の電圧に対応する信号を含む。演算部11は、インバータの動作のシミュレーションの結果として、電流信号24iを生成する。電流信号24iは、インバータからモータに供給される三相交流の電流を示し、U相、V相及びW相の各々の電流値を含む。
Specifically, the
演算部11は、電流信号24iを生成した後に、生成した電流信号24iと、メモリアクセス装置12から受けたパラメータ25Pとに基づいて、モータの動作をシミュレーションする。詳細については後述するが、パラメータ25Pは、メモリ14に記憶されている。演算部11は、モータの動作のシミュレーションの結果として、位置信号24θを生成する。位置信号24θは、モータに含まれるロータの回転位置を示す。
After generating the
演算部11は、ユーザ端末3から初期条件23を受け、その受けた初期条件23に基づいてインバータ及びモータの動作のシミュレーションを開始する。例えば、初期条件23は、モータに含まれるロータの初期回転位置や、インバータに含まれるスイッチング素子の状態を含む。
The
モータのシミュレーションについて、さらに詳しく説明する。図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
演算部11は、鎖交磁束、d軸電流、q軸電流、d軸インダクタンス及びq軸インダクタンスを用いて、一の時刻におけるU相電流と、V相電流、W相電流及びロータの回転位置を算出する。演算部11は、算出したU相電流と、V相電流、W相電流及びロータの回転位置に基づいて特定されるパラメータ25Pを用いて、一の時刻よりも後の時刻におけるU相電流と、V相電流、W相電流及びロータの回転位置を算出する。
The
再び図2を参照して、メモリアクセス装置12は、電流信号24i及び位置信号24θを演算部11から受ける。メモリアクセス装置12は、読み出し指示27をメモリコントローラ13に出力することにより、その受けた電流信号24i及び位置信号24θに対応するパラメータ25Pをメモリ14から取得する。
Referring to FIG. 2 again,
メモリアクセス装置12は、複数のパラメータ25Pをユーザ端末3から取得した場合、書き込み指示28をメモリコントローラ13に出力することにより、その取得した複数のパラメータ25Pをメモリ14に書き込む。パラメータ25Pは、シミュレータ1の動作開始時にメモリ14に書き込まれる。
When the
つまり、シミュレータ1において、パラメータ25Pを用いたモータの動作の模擬演算と、模擬演算の結果に基特定されるパラメータ25Pの特定とが繰り返される。これにより、車両に搭載されるモータの動作を仮想的に実現される。
That is, in the
メモリコントローラ13は、メモリアクセス装置12の制御に応じて、メモリ14にアクセスする。具体的には、メモリコントローラ13は、読み出し指示27をメモリアクセス装置12から受けた場合、その受けた読み出し指示27に含まれるアドレスからデータを読み出す。メモリコントローラ13は、書き込み指示28をメモリアクセス装置12から受けた場合、その受けた書き込み指示28に含まれるデータをメモリ14に書き込む。
The
メモリ14は、RAM(Random Access Memory)であり、シミュレータ1のメインメモリである。メモリ14は、シミュレータ1が実行するプログラムや、パラメータ25Pを記憶する。従って、図2に示していないが、演算部11が、メモリコントローラ13を介してメモリ14にアクセスすることがある。メモリ14は、バンク141~143を備える。本実施の形態において、バンク141~143の各々は、メモリモジュールである。
The
[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
主領域41は、データ番号が「1」~「360」であるパラメータ25Pを記憶する。副領域42は、データ番号が「2」~「360」であるパラメータ25Pを記憶する。パラメータ25Pのデータ番号を、「k」を用いて示している。
The main area 41
主領域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
単位領域61の各々は、データ番号が連続する2つのパラメータ25Pを記憶する。例えば、単位領域61Aは、データ番号が「1」~「2」であるパラメータ25Pを格納する。単位領域61Bは、データ番号が「3」~「4」であるパラメータ25Pを格納する。単位領域61Cは、データ番号が「5」~「6」であるパラメータ25Pを格納する。つまり、単位領域61の先頭アドレスに格納されるパラメータ25Pのデータ番号は奇数である。
Each
副領域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
単位領域62の各々は、データ番号が連続する2つのパラメータ25Pを記憶する。例えば、単位領域62Aは、データ番号が「2」~「3」であるパラメータ25Pを格納する。単位領域62Bは、データ番号が「4」~「5」であるパラメータ25Pを格納する。単位領域62Cは、データ番号が「6」~「7」であるパラメータ25Pを格納する。つまり、単位領域62において、先頭アドレスに格納されるパラメータ25Pのデータ番号は偶数である。
Each
[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
データ番号特定部121は、電流信号24i及び位置信号24θを演算部11から受ける。データ番号特定部121は、その受けた電流信号24i及び位置信号24θに対応するパラメータ25Pのデータ番号を決定する。演算部11が5種類のパラメータ25Pを用いてシミュレーションするため、データ番号特定部121は、5つの種類に対応する5つのデータ番号を決定する。データ番号特定部121は、決定したデータ番号を記録した番号情報31を判断部122及び領域決定部123に出力する。
The data
判断部122は、番号情報31に記録されたデータ番号の中で先頭のデータ番号を特定する。判断部122は、特定した先頭のデータ番号が奇数であるか否かを判断する。判断部122は、特定した先頭データのデータ番号が奇数であるか否かを示す判断情報32を領域決定部123に出力する。
The
領域決定部123は、データ番号特定部121から受けた番号情報31と、判断部122から受けた判断情報32に基づいて、パラメータ25Pを読み出すアドレスを決定する。
Based on the
具体的には、判断情報32が、先頭のデータ番号が奇数であることを示す場合、領域決定部123は、データ番号特定部121により特定されたデータ番号のうち、最後尾のデータ番号に対応するパラメータ25Pを除くパラメータ25Pを、主領域41の単位領域から読み出すことを決定する。領域決定部123は、最後尾のデータ番号に対応するパラメータ25Pを副領域42の単位領域から読み出すことを決定する。
Specifically, when the
判断情報32が、先頭のデータ番号が偶数であることを示す場合、領域決定部123は、データ番号特定部121により特定されたデータ番号のうち、最後尾のデータ番号に対応するパラメータ25Pを除くパラメータ25Pを、副領域42の単位領域から読み出すことを決定する。領域決定部123は、最後尾のデータ番号に対応するパラメータ25Pを主領域41の単位領域から読み出すことを決定する。
If the
領域決定部123は、決定した単位領域の各々を示す読み出しアドレス33を読み出し制御部124に出力する。読み出しアドレス33は、パラメータ25Pのデータ番号と、パラメータ25Pが書き込まれたアドレスとを対応付けたアドレスデータ34に基づいて決定される。アドレスデータ34は、パラメータ25Pがメモリ14に書き込まれる際に、書き込み制御部125によって生成される。
The
読み出し制御部124は、読み出しアドレス33を領域決定部123から受け、その受けた読み出しアドレス33に基づいて、パラメータ25Pをメモリ14から読み出す。具体的には、読み出し制御部124は、受けた読み出しアドレス33を含む読み出し指示27をメモリコントローラ13に出力する。読み出し制御部124は、パラメータ25Pを読み出し指示27の応答として受け、その受けたパラメータ25Pを演算部11に出力する。
The read control unit 124 receives the read
書き込み制御部125は、パラメータ25Pをユーザ端末3から受けた場合、その受けたパラメータ25Pの書き込みを指示する書き込み指示28をメモリコントローラ13に出力する。書き込み制御部125は、アドレスデータ34を生成し、その生成したアドレスデータ34を領域決定部123に出力する。アドレスデータ34は、パラメータ25Pのデータ番号と、パラメータ25Pが書き込まれたアドレスとを対応付けたデータである。
When receiving the
[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
データ番号特定部121が、電流信号24i及び位置信号24θを演算部11から受けた場合、メモリアクセス装置12は、図6に示す処理を開始する。
When the data
データ番号特定部121は、演算部11から受けた電流信号24i及び位置信号24θに対応するデータ番号を特定する(ステップS101)。具体的には、データ番号特定部121は、電流信号24i及び位置信号24θをパラメータ25Pのデータ番号に対応付けたテーブル51を保持している。データ番号特定部121は、図3に示すテーブル51を参照して、電流信号24i及び位置信号24θに対応するパラメータ25Pのデータ番号を特定する。
The data
ステップ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
判断部122は、番号情報31をデータ番号特定部121から受ける。判断部122は、その受けた番号情報31に記録されたデータ番号のうち、先頭のデータ番号と最後尾のデータ番号とを特定する(ステップS102)。先頭のデータ番号は、番号情報31に記録されたデータ番号のうち最小の番号である。最後尾のデータ番号は、番号情報31に記録されたデータ番号のうち最大の番号である。例えば、番号情報31に含まれるデータ番号が、「3」~「7」である場合、先頭のデータ番号は「3」である。最後尾のデータ番号は、「7」である。
判断部122は、メモリ14から読み出すパラメータ25Pの数が奇数であるか否かを判断する(ステップS103)。具体的には、判断部122は、番号情報31に記録されたデータ番号をカウントした値が奇数であるか否かを判断する。
The
以下、メモリ14から読み出すパラメータ25Pの数が奇数である場合と、偶数である場合とに分けて、メモリアクセス装置12の動作を説明する。
The operation of the
(読み出すパラメータ25Pの数が奇数である場合)
判断部122は、先頭のデータ番号に対応するパラメータ25Pを主領域41及び副領域42のどちらから読み出すかを決定するために、ステップS102で特定した先頭のデータ番号が奇数であるか否かを判断する(ステップS104)。先頭のデータ番号が奇数であるか否かによって、先頭のデータ番号に対応するパラメータ25Pを読み出す領域を変更する理由については後述する。
(When the number of
In order to determine from which of the main area 41 or the sub-area 42 the
先頭のデータ番号が奇数である場合(ステップS104においてYes)、判断部122は、読み出すパラメータ25Pの数が奇数であり、かつ、先頭のデータ番号が奇数であることを示す判断情報32を領域決定部123に出力する。
If the leading data number is an odd number (Yes in step S104), the
領域決定部123は、判断部122から受けた判断情報32に基づいて、最後尾のデータ番号を除くデータ番号に対応するパラメータ25Pを、主領域41から読み出すことを決定する(ステップS105)。領域決定部123は、判断部122から受けた判断情報32に基づいて、最後尾のデータ番号に対応するパラメータ25Pを副領域42から読み出すことを決定する(ステップS106)。
Based on the
番号情報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
最後尾のデータ番号が「7」であるため、領域決定部123は、データ番号が「3」~「6」であるパラメータ25Pを記録した単位領域を、主領域41から読み出すことを決定する(ステップS105)。メモリアクセス装置12は、パラメータ25Pを単位領域ごとに読み出すため、主領域41に設定された単位領域61B及び61Cを読み出し対象に決定する。
Since the last data number is "7", the
領域決定部123は、データ番号が「7」であるパラメータ25Pを記録した単位領域を、副領域42から読み出すことを決定する(ステップS106)。メモリアクセス装置12は、パラメータ25Pを単位領域ごとに読み出すため、副領域42に設定された単位領域62Cを読み出し対象に決定する。
The
領域決定部123は、ステップS105及びS106の結果として、読み出し対象に決定された単位領域61B、61C及び62Cの各々の読み出しアドレス33を読み出し制御部124に出力する。
As a result of steps S105 and S106, the
読み出し制御部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
番号情報31に記録されたデータ番号が「3」~「7」である場合、読み出し制御部124は、最初に、単位領域61Bを読み出し、その次に、単位領域61Cを読み出す。最後に、単位領域62Cが読み出される。
When the data numbers recorded in the
この結果、データ番号が「6」であるパラメータ25Pは、主領域41及び副領域42の各々から読み出される。データ番号が「6」であるパラメータ25Pは、演算部11に2回出力される。演算部11は、同じパラメータ25Pを重複して受けた場合、同じパラメータ25Pのうち一方を破棄する。
As a result, the
メモリアクセス装置12が、データ番号が「6」~「7」であるパラメータ25Pを副領域42から読み出す理由を説明する。
The reason why the
読み出し制御部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
読み出し制御部124は、データ番号が「7」であるパラメータ25Pを主領域41から読み出す場合、データ番号が「7」であるパラメータ25Pの他に、データ番号が「8」であるパラメータ25Pを読み出す必要がある。データ番号「8」は、ステップS101で特定されるデータ番号「3」~「7」に対応していない。データ番号が「8」であるパラメータ25Pを演算部11に出力した場合、演算部11が誤ったシミュレーションを実行する虞がある。
When reading the
そこで、メモリアクセス装置12は、データ番号が「6」~「7」であるパラメータ25Pを副領域42の単位領域62Cから読み出す。データ番号が「6」であるパラメータ25Pは、ステップS101で特定されたデータ番号「3」~「7」に含まれる。つまり、データ番号が「6」~「7」であるパラメータ25Pを副領域42から読み出すことにより、演算部11が誤ったシミュレーションを実行することを防ぐことができる。
Therefore, the
メモリアクセス装置12は、データ番号が「6」~「7」であるパラメータ25Pを副領域42から読み出すことにより、ホストである演算部11が要求していないパラメータ25Pを出力することを防ぐことができる。
By reading the
先頭のデータ番号が奇数である場合、先頭のデータ番号に対応するパラメータ25Pが主領域41から読み出される理由を説明する。先頭のデータ番号が奇数である場合、メモリアクセス装置12は、ステップS101で特定されたデータ番号以外の番号のパラメータ25Pを読み出すことを防ぐために、先頭のデータ番号に対応するパラメータ25Pを主領域41から読み出す。
The reason why the
例えば、ステップ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
ステップ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),
領域決定部123は、判断部122から受けた判断情報32に基づいて、最後尾のデータ番号を除くデータ番号に対応するパラメータ25Pを、副領域42から読み出すことを決定する(ステップS107)。領域決定部123は、判断部122から受けた判断情報32に基づいて、最後尾のデータ番号に対応するパラメータ25Pを主領域41から読み出すことを決定する(ステップS108)。
Based on the
例えば、番号情報31に記録されたデータ番号が「4」~「8」である場合、領域決定部123は、データ番号が「4」~「7」であるパラメータ25Pを副領域42から読み出すことを決定する(ステップS107)。つまり、副領域42に設定された単位領域62B及び62Cが読み出し対象に決定される。
For example, when the data numbers recorded in the
領域決定部123は、データ番号が「7」~「8」であるパラメータ25Pを主領域41から読み出すことを決定する(ステップS108)。つまり、主領域41に設定された単位領域61Dが読み出し対象に決定される。領域決定部123は、読み出し対象に決定された単位領域62B、62C及び61Cの各々のアドレス33を読み出し制御部124に出力する。
The
読み出し制御部124は、領域決定部123から受けたアドレス33を用いて、パラメータ25Pをメモリ14から読み出す(ステップS109)。読み出し制御部124は、読み出したパラメータ25Pを演算部11に出力する。この結果、データ番号が「7」であるパラメータ25Pが、主領域41及び副領域42の各々から読み出される。演算部11は、上述のように、重複して受けたパラメータのうち一方を破棄する。これにより、先頭のデータ番号が奇数であり、かつ、読み出すパラメータの数が奇数である場合と同様に、ホストである演算部11が要求していないパラメータ25Pを出力することを防ぐことができる。
The read control unit 124 uses the
(読み出すパラメータ25Pの数が偶数である場合)
読み出すパラメータ25Pの数が偶数である場合(ステップS103においてNo)におけるメモリアクセス装置12の動作を説明する。この場合、判断部122は、ステップS102で特定された先頭のデータ番号が奇数であるか否かを判断する(ステップS110)。
(When the number of
The operation of the
先頭のデータ番号が奇数である場合(ステップS110においてYes)、判断部122は、読み出すパラメータの数が偶数であり、かつ、先頭のデータ番号が奇数であることを示す判断情報32を領域決定部123に出力する。
If the leading data number is an odd number (Yes in step S110),
領域決定部123は、判断部122から受けた判断情報32に基づいて、番号情報31に記録されたデータ番号に対応するパラメータ25Pを、主領域41から読み出すことを決定する(ステップS111)。例えば、番号情報31に記録されたデータ番号が「3」~「10」である場合、領域決定部123は、単位領域61B~61Eを読み出し対象に決定する。領域決定部123は、読み出し対象に決定した単位領域61B~61Eに対応するアドレス33を読み出し制御部124に出力する。
Based on the
このように、読み出すパラメータ25Pの数が偶数であり、かつ、先頭のデータ番号が偶数である場合、メモリアクセス装置12は、パラメータ25Pを副領域42から読み出さない。メモリアクセス装置12は、副領域42にアクセスすることなく、ステップS101で特定されたデータ番号に対応する全てのパラメータ25Pを読み出すことができるためである。
Thus, when the number of
先頭のデータ番号が偶数である場合(ステップS110においてNo)、判断部122は、読み出すパラメータの数が偶数であり、かつ、先頭のデータ番号が偶数であることを示す判断情報32を領域決定部123に出力する。
If the head data number is an even number (No in step S110),
領域決定部123は、判断部122から受けた判断情報32に基づいて、番号情報31に記録されたデータ番号に対応するパラメータ25Pを、副領域42から読み出すことを決定する(ステップS112)。例えば、番号情報31に記録されたデータ番号が「2」~「9」である場合、領域決定部123は、単位領域62A~62Dを読み出し対象に決定する。この場合、メモリアクセス装置12は、ステップS101で特定されたデータ番号に対応する全てのパラメータ25Pを副領域42から読み出すことができる。メモリアクセス装置12は、パラメータ25Pを読み出すために主領域41にアクセスしなくてもよい。
Based on the
読み出し制御部124は、領域決定部123から受けたアドレスを用いて、ステップS111又はS112で決定された単位領域からパラメータ25Pを読み出す(ステップS109)。
The read control unit 124 uses the address received from the
先頭のデータ番号が偶数である場合、先頭のデータ番号に対応するパラメータ25Pが副領域42から読み出される理由を説明する。先頭のデータ番号が偶数である場合、メモリアクセス装置12は、ステップS101で特定されたデータ番号以外の番号のパラメータ25Pを読み出すことを防ぐために、先頭のデータ番号に対応するパラメータ25Pを副領域42から読み出す。
The reason why the
例えば、ステップ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
以上説明したように、メモリアクセス装置12は、連続する2つのパラメータ25Pを読み出す場合、読み出し対象のパラメータ25Pにおける先頭のデータ番号と、読み出し対象のパラメータ25Pの数とを特定する。メモリアクセス装置12は、特定した先頭のデータ番号と、特定したパラメータ25Pの数とに基づいて、パラメータ25Pを主領域41及び副領域42のどちらから読み出すかを決定する。
As described above, when reading two
これにより、メモリアクセス装置12は、連続するパラメータ25Pを高速にメモリ14から読み出すことができる。以下、メモリアクセス装置12が連続するパラメータ25Pを高速に読み出すことができる理由をさらに詳しく説明する。
Thereby, the
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,
単位領域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
データ番号「1」~「4」のパラメータ25Pを図7に示すメモリ14aから読み出す場合におけるメモリアクセス装置12の動作を説明する。メモリアクセス装置12は、上述のように、パラメータ25Pを単位領域ごとにメモリ14aから読み出す。
The operation of the
最初に、読み出し制御部124は、単位領域63Aの読み出しをメモリコントローラ13に指示する。メモリコントローラ13は、バンク141にアクセスしてデータ番号が「1」であるパラメータ25Pを読み出し、バンク142にアクセスしてデータ番号が「2」であるパラメータ25Pを読み出す。
First, the read control unit 124 instructs the
次に、読み出し制御部124は、単位領域63Bの読み出しをメモリコントローラ13に指示する。メモリコントローラ13は、単位領域63Aの読み出しと同様に、単位領域63Bを読み出すために、バンク142及び143にアクセスする。
Next, the read control unit 124 instructs the
メモリコントローラ13は、単位領域を読み出すたびに、複数のバンクにアクセスしなければならない。この結果、往復遅延時間が長くなり、パラメータ25Pの読み出し効率が低下する。往復遅延時間は、メモリアクセス装置12がパラメータ25Pの読み出しを指示してから、パラメータ25Pを取得するまでの時間である。
The
これに対して、メモリ14は、主領域41及び副領域42を含む。主領域41及び副領域42は、複数の単位領域を含む。各単位領域は、バンク141~143のうちいずれか1つに設定され、連続する2つのパラメータ25Pを記憶する。主領域41に設定される単位領域において、先頭のデータ番号は奇数である。副領域42に設定される単位領域において、先頭のデータ番号は偶数である。
In contrast,
先頭のデータ番号が奇数である場合、最後尾のデータ番号を除くデータ番号に対応するデータを主領域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
[2.2.パラメータ25Pの書き込み]
図8は、パラメータ25Pをメモリ14に書き込むメモリアクセス装置12の動作を示すフローチャートである。以下、図4及び図8を参照しながら、パラメータ25Pを書き込むメモリアクセス装置12の動作を説明する。
[2.2. Write
FIG. 8 is a flow chart showing the operation of the
メモリアクセス装置12において、書き込み制御部125は、メモリコントローラ13を介して、メモリ14のアドレス空間を設定する(ステップS201)。具体的には、書き込み制御部125は、連続する2つの論理アドレスが1つのバンクに割り当てられるように、アドレス空間を設定する。例えば、図4を参照して、書き込み制御部125は、論理アドレス「0001」及び「0002」をバンク141に割り当て、論理アドレス「2001」及び「2002」をバンク141に割り当てる。
In the
書き込み制御部125は、ステップS201で設定された論理アドレスのうち、連続する2つの論理アドレスを単位領域に設定する(ステップS202)。連続する2つの論理アドレスとは、ステップS201において同一のバンクに設定されたアドレスである。この結果、図4に示すように、単位領域61及び62が設定される。
The
書き込み制御部125は、ステップS202で設定された単位領域を主領域41及び副領域42のいずれか一方に割り当てる(ステップS203)。本実施の形態では、論理アドレスが連続する複数の単位領域が、図4に示すように、主領域41又は副領域42に割り当てられる。しかし、主領域41又は副領域42に割り当てられる単位領域の論理アドレスが不連続であることは妨げられない。
The
書き込み制御部125は、ステップS203において主領域41に設定された単位領域61に、データ番号「1」~「360」のパラメータ25Pを書き込む(ステップS204)。このとき、書き込み制御部125は、データ番号が連続する2つのパラメータ25Pを単位領域61に書き込む。単位領域61の先頭アドレスに書き込まれるパラメータ25Pのデータ番号は、奇数である。単位領域61の論理アドレスが連続している場合、パラメータ25Pが格納される記憶領域の論理アドレスは、図4に示すように、データ番号の増加に伴って増加する。
The
書き込み制御部125は、ステップS203において副領域42に設定された単位領域62に、データ番号「2」~「360」のパラメータ25Pを書き込む(ステップS205)。このとき、書き込み制御部125は、データ番号が連続する2つのパラメータ25Pを単位領域62に書き込む。単位領域62の先頭アドレスに書き込まれるパラメータ25Pのデータ番号は、偶数である。単位領域62の論理アドレスが連続している場合、パラメータ25Pが格納される記憶領域の論理アドレスは、図4に示すように、データ番号の増加に伴って増加する。
The
書き込み制御部125は、一のパラメータ25Pのデータ番号を、一のパラメータ25Pが書き込まれた論理アドレスと対応付ける(ステップS206)。ステップS206の結果、アドレスデータ34が生成される。書き込み制御部125は、生成されたアドレスデータ34を領域決定部123に出力する。その後、書き込み制御部125は、図8に示す書き込み処理を終了する。
The
書き込み制御部125が図8に示すフローチャートに基づいてパラメータ25Pをメモリ14に書き込むことにより、読み出し制御部124は、図6に示す処理を実行することが可能となる。つまり、書き込み制御部125は、読み出し制御部124がバンクへのアクセス回数を削減できるように、パラメータ25Pをメモリに書き込むことができる。
The
[変形例]
上記実施の形態では、複数のパラメータ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
上記実施の形態では、メモリアクセス装置12が、シミュレータ1に搭載される例を示したが、これに限定されない。メモリアクセス装置12は、メモリ14を搭載する情報処理機器に搭載されればよい。
Although the
上記実施の形態では、メモリ14が、RAMである例を説明したが、これに限定されない。メモリ14は、メモリアクセス装置12がデータの書き込みと読み出し可能な記憶装置であれば、メモリ14の種類は特に限定されない。
In the above embodiment, an example in which the
また、上記実施の形態において、メモリアクセス装置12の各機能ブロックは、LSIなどの半導体装置により個別に1チップ化されてもよいし、一部又は全部を含むように1チップ化されてもよい。ここでは、LSIとしたが、集積度の違いにより、IC、システムLSI、スーパーLSI、ウルトラLSIと呼称されることもある。
Further, in the above embodiment, each functional block of the
集積回路化の手法は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
また、上記実施の形態の各処理をハードウェアにより実現してもよいし、ソフトウェア(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
また、上記実施の形態における処理方法の実行順序は、上記実施の形態の記載に制限されるものではなく、発明の要旨を逸脱しない範囲で実行順序を入れ替えてもよい。 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
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.
前記判断部は、前記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.
前記判断部は、前記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~第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.
前記主領域の単位領域の各々は、先頭データのデータ番号が奇数であってデータ番号が連続する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.
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)
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 |
-
2019
- 2019-08-30 JP JP2019158103A patent/JP7260444B2/en active Active
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 |