JP5882800B2 - Information processing device having list command verification function, list command verification method, and program for list command verification - Google Patents

Information processing device having list command verification function, list command verification method, and program for list command verification Download PDF

Info

Publication number
JP5882800B2
JP5882800B2 JP2012059556A JP2012059556A JP5882800B2 JP 5882800 B2 JP5882800 B2 JP 5882800B2 JP 2012059556 A JP2012059556 A JP 2012059556A JP 2012059556 A JP2012059556 A JP 2012059556A JP 5882800 B2 JP5882800 B2 JP 5882800B2
Authority
JP
Japan
Prior art keywords
memory
port
request
list
memory access
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
JP2012059556A
Other languages
Japanese (ja)
Other versions
JP2013196068A (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.)
NEC Platforms Ltd
Original Assignee
NEC Platforms 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 NEC Platforms Ltd filed Critical NEC Platforms Ltd
Priority to JP2012059556A priority Critical patent/JP5882800B2/en
Publication of JP2013196068A publication Critical patent/JP2013196068A/en
Application granted granted Critical
Publication of JP5882800B2 publication Critical patent/JP5882800B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Test And Diagnosis Of Digital Computers (AREA)
  • Complex Calculations (AREA)

Description

本発明は、複数のメモリアクセスを一括で行うリスト命令の検証機能を有する情報処理装置、リスト命令の検証方法、及びリスト命令の検証のためのプログラム   The present invention relates to an information processing apparatus having a list instruction verification function for collectively performing a plurality of memory accesses, a list instruction verification method, and a program for verifying a list instruction

情報処理装置を構成する記憶手段へのアクセス方法については、様々な高速化や効率化の技術が提案されている。   Various techniques for speeding up and improving efficiency have been proposed for accessing the storage means constituting the information processing apparatus.

例えば、特許文献1には、複数の演算装置と複数の記憶装置とで構成される情報処理装置において、1つの記憶装置の同一アドレスへのアクセスリクエストが複数発行された場合、該複数のリクエストを1つのリクエストに圧縮する技術の一例が記載されている。   For example, in Patent Document 1, in an information processing apparatus composed of a plurality of arithmetic devices and a plurality of storage devices, when a plurality of access requests to the same address of one storage device are issued, the plurality of requests are indicated. An example of a technique for compressing into one request is described.

特許文献1に記載されたリクエストの圧縮に関する技術は、複数の演算装置から同一の主記憶アドレスへのリクエストが複数発行された場合、該複数のリクエストを1つのリクエストに圧縮する機能と、圧縮されたリクエストに対する記憶装置からのリプライデータを上記圧縮対象の複数演算装置に向けて展開して送出する機能とを有する。   The technology related to request compression described in Patent Document 1 is compressed with a function of compressing a plurality of requests into one request when a plurality of requests to the same main memory address are issued from a plurality of arithmetic devices. A function of expanding reply data from the storage device for the requested request toward the plurality of arithmetic devices to be compressed.

また、一括で複数の命令を発行し処理する情報処理装置として、例えば、ベクトル型コンピュータがあるが、このベクトル型コンピュータは、一般的に、リスト命令と呼ばれる複数のメモリアクセスを一括で行う命令を備えている。   In addition, as an information processing apparatus that issues and processes a plurality of instructions at once, for example, there is a vector type computer, and this vector type computer generally executes an instruction for performing a plurality of memory accesses collectively called a list instruction. I have.

このリスト命令には、メモリから複数のデータを一括で読み出すギャザー命令と、メモリへ複数のデータを一括で書き込むスキャタ命令の2種類が存在する。   There are two types of list instructions: a gather instruction that reads a plurality of data from the memory at once, and a scatter instruction that writes a plurality of data to the memory at a time.

これら2つの命令は、複数のベクトル要素毎にアクセスするメモリのアドレスを指定するので、同じメモリアドレスが複数指定された場合は、複数のメモリアクセスリクエストが同じアドレスに対して発生することになる。そのため、メモリのアクセス処理で競合が発生してしまい、コンピュータシステム全体としての性能低下につながる。   These two instructions specify the address of the memory to be accessed for each of a plurality of vector elements. Therefore, when a plurality of the same memory addresses are specified, a plurality of memory access requests are generated for the same address. For this reason, contention occurs in memory access processing, leading to performance degradation of the entire computer system.

そこで、同一のアドレスに対し複数のメモリアクセスリクエストが発生する場合は、それらの複数のリクエストを1つのリクエストに圧縮して処理を行う高速化の機能をコンピュータシステムに加える場合が多い。   Therefore, when a plurality of memory access requests are generated for the same address, a high speed function for compressing the plurality of requests into one request and performing processing is often added to the computer system.

特開平9−44459号公報JP-A-9-44459

前述した特許文献1に記載された技術、及び、前述のベクトル型コンピュータのメモリアクセスリクエスト圧縮の技術は、これらの圧縮処理が正しく行われたかどうかをテストプログラムで検証することが困難であるという問題点がある。   The technique described in Patent Document 1 and the memory access request compression technique of the vector computer described above are difficult to verify with a test program whether or not these compression processes have been performed correctly. There is a point.

その理由は、当該圧縮処理が行われていなくても、実行結果では判断できない場合があるためである。   The reason is that even if the compression process is not performed, it may not be determined from the execution result.

例えば、前述のベクトル型コンピュータのギャザー命令で、同一のアドレスに対し複数のメモリアクセスリクエストが発生した例では、圧縮無しの場合、メモリアクセス処理で競合が発生し、該複数のリクエストが順番に処理されることになり、リプライデータはそれぞれのリクエストに対し、同じものが1つずつ返ってくる。   For example, in the case where a plurality of memory access requests are generated for the same address with the above-mentioned vector computer gather instruction, in the case of no compression, a conflict occurs in the memory access processing, and the plurality of requests are processed in order. As a result, the same reply data is returned for each request.

次に、該複数のメモリアクセスリクエストを1つのリクエストに圧縮した場合、リプライデータは1つであるが、該複数のメモリアクセスリクエストに対して複製されて返されるため、実行結果は、該複数のメモリアクセスリクエストに、同じリプライデータが1つずつ返されることになる。   Next, when the plurality of memory access requests are compressed into one request, the reply data is one, but since the plurality of memory access requests are duplicated and returned, the execution result is the plurality of memory access requests. The same reply data is returned to the memory access request one by one.

そのため、実行結果が圧縮無しの場合と同じになり、実行結果を見ただけでは、圧縮処理が行われた否かを検知することができない。   Therefore, the execution result is the same as when no compression is performed, and it is impossible to detect whether or not the compression process has been performed only by looking at the execution result.

本発明の目的は、上述した問題点を解決できるリスト命令の検証機能を有する情報処理装置、リスト命令の検証方法、及びリスト命令の検証のためのプログラムを提供することにある。   An object of the present invention is to provide an information processing apparatus having a list instruction verification function capable of solving the above-described problems, a list instruction verification method, and a program for verifying a list instruction.

本発明の情報処理装置は、複数のメモリポートを有するとともに複数のデータを記憶し、前記メモリポートを介して前記データへのアクセスが行われる記憶手段と、
前記記憶手段に対して複数のアクセスを一括で行うリスト命令が同一の前記ポートへの複数のメモリアクセスリクエストを発行するものである場合に、当該複数のアクセスリクエストを一つのメモリアクセスリクエストに圧縮して前記記憶手段に当該ポートを介して発行するメモリリクエスト制御手段と、
前記複数のメモリポートと一対一対応に設けられ、前記リスト命令が発行され、かつ、対応する前記ポートに前記メモリアクセスリクエストが前記メモリリクエスト制御手段から発行された場合に、該メモリアクセスリクエストの数を計数する複数のカウンタ手段と
から構成される。
The information processing apparatus of the present invention has a plurality of memory ports and stores a plurality of data, and a storage means for accessing the data via the memory ports;
When a list instruction that performs a plurality of accesses to the storage unit collectively issues a plurality of memory access requests to the same port, the plurality of access requests are compressed into one memory access request. Memory request control means for issuing to the storage means via the port;
The number of memory access requests provided in a one-to-one correspondence with the plurality of memory ports, when the list instruction is issued, and when the memory access request is issued to the corresponding port from the memory request control means And a plurality of counter means for counting.

本発明のリスト命令の検証方法は、 複数のメモリポートを有するとともに複数のデータを記憶し、前記メモリポートを介して前記データへのアクセスが行われる記憶手段を備えた情報処理装置において、
前記記憶手段に対して複数のアクセスを一括で行うリスト命令が、同一の前記ポートへの複数のメモリアクセスリクエストを発行するものである場合に、当該複数のアクセスリクエストを一つのメモリアクセスリクエストに圧縮して前記記憶手段に当該ポートを介して発行し、
前記リスト命令が発行され、かつ、前記ポートに前記メモリアクセスリクエストが前記メモリリクエスト制御ステップで発行された場合に、該メモリアクセスリクエストの数を前記ポート毎に計数する。
The list instruction verification method of the present invention is an information processing apparatus comprising a storage means having a plurality of memory ports and storing a plurality of data, wherein the data is accessed via the memory ports.
When a list instruction that performs a plurality of accesses to the storage unit collectively issues a plurality of memory access requests to the same port, the plurality of access requests are compressed into one memory access request. And issued to the storage means via the port,
When the list command is issued and the memory access request is issued to the port in the memory request control step, the number of memory access requests is counted for each port.

本発明のリスト命令の検証のためのプログラムは、
複数のメモリポートを有するとともに複数のデータを記憶し、前記メモリポートを介して前記データへのアクセスが行われる記憶手段を備えた情報処理装置において、
前記記憶手段に対して複数のアクセスを一括で行うリスト命令が、同一の前記ポートへの複数のメモリアクセスリクエストを発行するものである場合に、当該複数のアクセスリクエストを一つのメモリアクセスリクエストに圧縮して前記記憶手段に当該ポートを介して発行するメモリリクエスト制御処理と、
前記リスト命令が発行され、かつ、前記ポートに前記メモリアクセスリクエストが前記メモリリクエスト制御処理で発行された場合に、該メモリアクセスリクエストの数を前記ポート毎に計数する計数処理と
をコンピュータに実行させる。
A program for verifying a list instruction according to the present invention includes:
In an information processing apparatus having a plurality of memory ports and storing a plurality of data, and having a storage means for accessing the data via the memory ports,
When a list instruction that performs a plurality of accesses to the storage unit collectively issues a plurality of memory access requests to the same port, the plurality of access requests are compressed into one memory access request. A memory request control process to be issued to the storage means via the port;
When the list instruction is issued and the memory access request is issued to the port by the memory request control process, the computer executes a counting process for counting the number of memory access requests for each port. .

本発明には、リスト命令におけるメモリアクセスリクエストの圧縮処理が正しく行われたかどうかを検証することができるという効果がある。   According to the present invention, it is possible to verify whether or not the compression processing of the memory access request in the list instruction is correctly performed.

図1は、一括で複数の命令を発行し処理する情報処理装置の一般的な構成を示すブロック図である。FIG. 1 is a block diagram showing a general configuration of an information processing apparatus that issues and processes a plurality of instructions at once. 図2は、ギャザー命令処理時の一般的なメモリアクセス動作の一例を示す模式図である。FIG. 2 is a schematic diagram showing an example of a general memory access operation at the time of gather instruction processing. 図3は、本発明の実施形態の構成を示すブロック図である。FIG. 3 is a block diagram showing the configuration of the embodiment of the present invention. 図4は、本発明の実施形態におけるリスト命令リクエスト数カウンタ部の構成を示すブロック図である。FIG. 4 is a block diagram showing a configuration of the list command request number counter unit in the embodiment of the present invention. 図5は、本発明の実施形態におけるテストプログラムの動作を示すフローチャートである。FIG. 5 is a flowchart showing the operation of the test program in the embodiment of the present invention. 図6は、本発明の実施形態におけるメモリリクエスト制御部の動作の一例を示す模式図である。FIG. 6 is a schematic diagram illustrating an example of the operation of the memory request control unit according to the embodiment of the present invention. 図7は、本発明の実施形態におけるリスト命令リクエスト数カウンタ値移送命令の構成を示す図である。FIG. 7 is a diagram showing a configuration of a list command request counter value transfer command in the embodiment of the present invention.

前述した一括で複数の命令を発行し処理する情報処理装置(例えば、ベクトル型コンピュータ)が一般的に備えているリスト命令の一つであるギャザー命令のメモリアクセスリクエスト数の圧縮処理動作の一例について、図1及び図2を参照して説明する。   An example of compression processing operation for the number of memory access requests of gather instructions, which is one of list instructions generally provided in an information processing apparatus (for example, a vector computer) that issues and processes a plurality of instructions in a batch A description will be given with reference to FIGS.

図1は、一括で複数の命令を発行し処理する情報処理装置10の構成を示すブロック図である。
図1を参照すると、情報処理装置10は制御手段20と記憶手段30とを備える。なお、図1は、情報処理装置10の全体構成のうち、本説明に関連する構成要素のみを示している。
FIG. 1 is a block diagram illustrating a configuration of an information processing apparatus 10 that issues and processes a plurality of instructions at once.
Referring to FIG. 1, the information processing apparatus 10 includes a control unit 20 and a storage unit 30. Note that FIG. 1 shows only the components related to the present description in the overall configuration of the information processing apparatus 10.

制御手段20は、メモリリクエスト制御部21と、ベクトルレジスタ22とを備える。   The control unit 20 includes a memory request control unit 21 and a vector register 22.

記憶手段30は、データ記憶域31を備える。   The storage means 30 includes a data storage area 31.

そして、制御手段20から記憶手段30をアクセスするための8個のポート(ポート0からポート7)があり、それぞれのポートからデータ記憶域31の特定の記憶領域のデータにアクセスすることができる。   Then, there are eight ports (port 0 to port 7) for accessing the storage means 30 from the control means 20, and data in a specific storage area of the data storage area 31 can be accessed from each port.

図2はメモリリクエスト制御部21におけるギャザー命令処理時のメモリアクセス動作の一例を示す模式図である。   FIG. 2 is a schematic diagram showing an example of a memory access operation at the time of gather instruction processing in the memory request control unit 21.

ギャザー命令は、ベクトル要素毎に指定した複数のアドレスの記憶領域からデータを読み出し、一括でベクトルレジスタ22へ格納する命令である。   The gather instruction is an instruction that reads data from a plurality of address storage areas designated for each vector element and stores them in the vector register 22 at a time.

まず、メモリアクセスリクエスト数の圧縮が無い場合を図2の(A)に示す例で説明する。   First, a case where there is no compression of the number of memory access requests will be described with an example shown in FIG.

図2の(A)に示す例を参照すると、ベクトル要素0のアクセスアドレスは「アドレスA」である。以下同様に、ベクトル要素1のアクセスアドレスは「アドレスB」、ベクトル要素2のアクセスアドレスは「アドレスC」となり、最後のベクトル要素7のアクセスアドレスは「アドレスH」となる。つまり、ベクトル要素0からベクトル要素7に対応するメモリアクセスリクエストは、それぞれ1つずつの合計8個が発行される。   Referring to the example shown in FIG. 2A, the access address of vector element 0 is “address A”. Similarly, the access address of the vector element 1 is “address B”, the access address of the vector element 2 is “address C”, and the access address of the last vector element 7 is “address H”. That is, eight memory access requests corresponding to vector element 0 to vector element 7 are issued, one for each.

このとき、メモリリクエスト制御部21が、どのメモリアクセスリクエストをどのメモリポートに対して発行するかは、ベクトル要素0からベクトル要素7のそれぞれのアクセスアドレスに依存する。   At this time, which memory access request the memory request control unit 21 issues to which memory port depends on the access addresses of the vector elements 0 to 7.

図2の(A)に示す例では、「アドレスA」はメモリポート0からアクセスする記憶領域に存在することを示す。以下同様に、「アドレスB」はメモリポート1からアクセスする記憶領域に存在することを示し、「アドレスC」はメモリポート1からアクセスする記憶領域に存在することを示し、最後の「アドレスH」はメモリポート7からアクセスする記憶領域に存在することを示している。つまり、図2の(A)の場合は、メモリリクエスト制御部21は、メモリポート0と、メモリポート3と、メモリポート4と、メモリポート5とに、それぞれ1個、そして、メモリポート1と、メモリポート7にそれぞれ2個の、合計8個のメモリアクセスリクエストを発行する。   In the example shown in FIG. 2A, “address A” is present in the storage area accessed from the memory port 0. Similarly, “address B” indicates that the memory area is accessed from the memory port 1, “address C” indicates that the memory area is accessed from the memory port 1, and the last “address H”. Indicates that the data exists in a storage area accessed from the memory port 7. That is, in the case of FIG. 2A, the memory request control unit 21 has one memory port 0, one memory port 3, one memory port 4, and one memory port 5, and one memory port 1 , A total of eight memory access requests are issued to the memory port 7, two each.

これらの、各メモリポートに発行されたメモリアクセスリクエストに対して、各メモリポートに各メモリアクセスリクエストで要求されたデータがリプライデータとしてデータ記憶域31から返ってくる。メモリリクエスト制御部21は、これらリプライデータを該当のベクトルレジスタへ格納する。   In response to these memory access requests issued to each memory port, the data requested by each memory access request to each memory port is returned from the data storage area 31 as reply data. The memory request control unit 21 stores these reply data in the corresponding vector register.

次に、メモリアクセスリクエスト数の圧縮がある場合を図2の(B)に示す例で説明する。   Next, a case where there is compression of the number of memory access requests will be described with reference to an example shown in FIG.

ギャザー命令では、ベクトルの要素毎にアクセスするメモリアドレスを指定するが、複数のベクトル要素で同一のメモリアドレスが指定される場合、メモリリクエスト制御部21は、その複数のベクトル要素のうちで要素番号の大きい方のベクトル要素のリクエストを代表して採用(リクエストの圧縮)して処理を行う。   In the gather instruction, a memory address to be accessed is designated for each vector element. When the same memory address is designated by a plurality of vector elements, the memory request control unit 21 selects an element number among the vector elements. Represents the request of the vector element with the larger one (processing of request compression) and performs processing.

図2の(B)の例は、ベクトル要素0からベクトル要素3のアクセスアドレスが「アドレスA」で全て一致し、さらにベクトル要素4からベクトル要素7のアクセスアドレスが「アドレスE」で全て一致するというケースである。この場合は、メモリリクエスト制御部21は、ベクトル要素3の「アドレスA」へのメモリアクセスリクエストとおよびベクトル要素7の「アドレスE」へのメモリアクセスリクエストを代表して採用する。そして、メモリリクエスト制御部21は、それぞれのアドレスに対応するメモリポート0およびメモリポート4へメモリアクセスリクエストを発行する。つまり、メモリリクエスト制御部21は、ベクトル要素0からベクトル要素7の8個のメモリアクセスリクエストを、ベクトル要素3およびベクトル要素7の2個のリクエストに圧縮する。すなわち、リクエストの数が8個から2個に削減される。   In the example of FIG. 2B, the access addresses of vector element 0 to vector element 3 all match at “address A”, and the access addresses of vector element 4 to vector element 7 all match at “address E”. This is the case. In this case, the memory request control unit 21 employs the memory access request to the “address A” of the vector element 3 and the memory access request to the “address E” of the vector element 7 as a representative. Then, the memory request control unit 21 issues a memory access request to the memory port 0 and the memory port 4 corresponding to each address. That is, the memory request control unit 21 compresses eight memory access requests from the vector element 0 to the vector element 7 into two requests of the vector element 3 and the vector element 7. That is, the number of requests is reduced from 8 to 2.

そして、各メモリポートにリプライデータが返ってくると、メモリリクエスト制御部21は、保存しておいた圧縮情報から、返ってきたリプライデータAをベクトル要素0からベクトル要素3のためのベクトルレジスタに、また、リプライデータEをベクトル要素4からベクトル要素7のためのベクトルレジスタへそれぞれ格納する。   When the reply data is returned to each memory port, the memory request control unit 21 converts the returned reply data A from the vector element 0 to the vector register for the vector element 3 from the stored compression information. In addition, the reply data E is stored in the vector registers for the vector element 4 to the vector element 7, respectively.

次に、本発明の実施の形態について図面を参照して詳細に説明する。   Next, embodiments of the present invention will be described in detail with reference to the drawings.

図3は、本発明の実施形態を示すブロック図である。
図3を参照すると、情報処理装置100は制御手段200と記憶手段300とを備える。なお、図3は、情報処理装置100の全体構成のうち、本発明に関連する構成要素のみを示している。
FIG. 3 is a block diagram showing an embodiment of the present invention.
Referring to FIG. 3, the information processing apparatus 100 includes a control unit 200 and a storage unit 300. FIG. 3 shows only components related to the present invention in the overall configuration of the information processing apparatus 100.

制御手段200は、メモリリクエスト制御部210と、ベクトルレジスタ220と、ソフトウェアビジブルレジスタ230とを備える。   The control unit 200 includes a memory request control unit 210, a vector register 220, and a software visible register 230.

記憶手段300は、データ記憶域310と、ソフトウェアシミュレータ実行結果記憶域320とを備える。   The storage means 300 includes a data storage area 310 and a software simulator execution result storage area 320.

そして、制御手段200から記憶手段300をアクセスするためのポートとして、8個のポート(ポート0からポート7)があり、それぞれのポートからデータ記憶域310の特定の記憶領域のデータにアクセスすることができる。   There are eight ports (port 0 to port 7) for accessing the storage means 300 from the control means 200, and access to data in a specific storage area of the data storage area 310 from each port. Can do.

次に、制御手段200の構成及び動作について簡単に説明する。   Next, the configuration and operation of the control means 200 will be briefly described.

ソフトウェアビジブルレジスタ230は、プログラムから値を参照することのできるレジスタで、複数存在する。   The software visible register 230 is a register in which a value can be referred from a program, and there are a plurality of software visible registers 230.

ベクトルレジスタ220は、一般的に使用されるレジスタで、通常、プログラムが動作する場合は、ここにアドレスやデータが格納される。   The vector register 220 is a commonly used register, and usually stores an address and data when a program operates.

制御手段200は、リスト命令リクエスト数カウンタ値移送命令で、後述するメモリリクエスト制御部210内に設けられたリスト命令リクエスト数カウンタブロック211の値を、ソフトウェアビジブルレジスタ230に移送する。   The control means 200 transfers the value of the list instruction request number counter block 211 provided in the memory request control unit 210 described later to the software visible register 230 by a list instruction request number counter value transfer instruction.

リスト命令リクエスト数カウンタ値移送命令の構成を図7に示す。
図7を参照すると、リスト命令リクエスト数カウンタ値移送命令は、「オペコード」と、「MODE」と、「REG」から構成される。「オペコード」は、メモリリクエスト制御部210に対し、リスト命令リクエスト数カウンタ値移送命令の実行を指示するコードである。「MODE」は、リスト命令リクエスト数カウンタブロック211とソフトウェアビジブルレジスタ230との間のデータの移送方向を示す。「MODE」の値が「0」の場合は、リスト命令リクエスト数カウンタブロック211からソフトウェアビジブルレジスタ230へデータを移送する。「MODE」の値が「1」の場合は、逆に、ソフトウェアビジブルレジスタ230からリスト命令リクエスト数カウンタブロック211へデータを移送する。「REG」は、複数あるソフトウェアビジブルレジスタ230の1つを識別する番号を表す。
The configuration of the list command request counter value transfer command is shown in FIG.
Referring to FIG. 7, the list command request number counter value transfer command is composed of “opcode”, “MODE”, and “REG”. The “opcode” is a code that instructs the memory request control unit 210 to execute a list command request number counter value transfer command. “MODE” indicates a data transfer direction between the list command request counter block 211 and the software visible register 230. When the value of “MODE” is “0”, data is transferred from the list command request counter block 211 to the software visible register 230. On the contrary, when the value of “MODE” is “1”, data is transferred from the software visible register 230 to the list instruction request number counter block 211. “REG” represents a number for identifying one of the plurality of software visible registers 230.

メモリリクエスト制御部210は、リスト命令リクエスト数カウンタブロック211を備える。そして、メモリリクエスト制御部210は、プログラムが発行したメモリリクエストの命令が、リスト命令かどうかの判断を行い、リスト命令の場合には、リクエスト数の圧縮が可能であれば圧縮処理を行い、リスト命令リクエスト数カウンタブロック211のカウントアップ処理を行う。   The memory request control unit 210 includes a list command request counter block 211. Then, the memory request control unit 210 determines whether the instruction of the memory request issued by the program is a list instruction. If the instruction is a list instruction, the memory request control unit 210 performs a compression process if the number of requests can be compressed. The count-up process of the instruction request counter block 211 is performed.

図4は、リスト命令リクエスト数カウンタブロック211内の各ポート対応に設けられるリスト命令リクエスト数カウンタ部211−0の構成を示す。すなわち、リスト命令リクエスト数カウンタブロック211は、メモリリクエスト制御部210のメモリポート対応に8個の上記リスト命令リクエスト数カウンタ部211−0を有する。   FIG. 4 shows a configuration of the list command request counter 211-2 provided for each port in the list command request counter 211. In other words, the list command request counter block 211 has eight list command request counters 211-0 corresponding to the memory ports of the memory request controller 210.

図4を参照すると、リスト命令リクエスト数カウンタ部211−0は、アンドゲート211−1と、セレクタ211−2と、8ビットのリスト命令リクエストカウンタ211−3と、+1加算器211−4とを備える。   Referring to FIG. 4, the list command request counter 211-2 includes an AND gate 211-1, a selector 211-2, an 8-bit list command request counter 211-3, and a +1 adder 211-4. Prepare.

次に、リスト命令リクエスト数カウンタ部211−0の構成及び動作について簡単に説明する。   Next, the configuration and operation of the list command request counter 211-2 will be briefly described.

まず、リスト命令リクエスト数カウンタ部211−0は、メモリリクエスト制御部210からメモリリクエスト命令の情報を受信する。ここで、アンドゲート211−1の入力Vはメモリリクエスト命令が有効か否かを表し、取りうる値は「1」が有効、「0」が無効である。また、入力Lはメモリリクエスト命令がリスト命令か否かを表し、取りうる値は「1」がリスト命令、「0」がリスト命令以外である。   First, the list command request counter 211-0 receives memory request command information from the memory request controller 210. Here, the input V of the AND gate 211-1 indicates whether or not the memory request instruction is valid, and possible values are “1” is valid and “0” is invalid. The input L indicates whether the memory request command is a list command. Possible values are “1” for a list command and “0” for other than a list command.

そして、リスト命令リクエスト数カウンタ部211−0は、アンドゲート211−1の入力Vが「1」(メモリリクエスト命令が有効)であり、かつ、Lが「1」(リスト命令である)の場合、つまり、メモリリクエスト命令が有効でリスト命令の場合のみ、出力が「1」になる。したがって、セレクタ211−2は、+1加算器211−4の出力(すなわち、そのときのカウンタ211−3の値に1を加算した値)を選択し、リスト命令リクエスト数カウンタ211−3に格納する。結果として、リスト命令リクエスト数カウンタ211−1の値に1が加算されることになる。   The list command request counter 211-0 has a case where the input V of the AND gate 211-1 is "1" (memory request command is valid) and L is "1" (list command). That is, the output is “1” only when the memory request instruction is valid and is a list instruction. Therefore, the selector 211-2 selects the output of the +1 adder 211-4 (that is, a value obtained by adding 1 to the value of the counter 211-3 at that time) and stores it in the list instruction request number counter 211-3. . As a result, 1 is added to the value of the list command request counter 211-1.

次に、記憶手段300の構成及び動作について簡単に説明する。   Next, the configuration and operation of the storage unit 300 will be briefly described.

ソフトウェアシミュレータ実行結果記憶域320は、ソフトウェアシミュレータが実行したリスト命令リクエスト数のシミュレーション結果を保持しておくための記憶域である。この記憶域に記憶された値をプログラムが読み出し、ソフトウェアビジブルレジスタ230に格納されたリスト命令リクエスト数カウンタブロックの値との比較を行う。   The software simulator execution result storage area 320 is a storage area for storing simulation results of the number of list instruction requests executed by the software simulator. The program reads the value stored in this storage area and compares it with the value of the list instruction request counter block stored in the software visible register 230.

データ記憶域310は、通常のデータを保持しておくための記憶域であり、プログラムが発行したメモリリクエスト命令が、指定したアドレスに対応したメモリポートを通じて、データの読み書きを行う。   The data storage area 310 is a storage area for storing normal data, and a memory request instruction issued by a program reads and writes data through a memory port corresponding to a specified address.

以上のように構成された情報処理装置100の動作について、図5のフローチャートと、図6の模式図を参照して説明する。   The operation of the information processing apparatus 100 configured as described above will be described with reference to the flowchart of FIG. 5 and the schematic diagram of FIG.

図5は、本発明の実施形態でのテストプログラムの動作の概要を示すフローチャートである。   FIG. 5 is a flowchart showing an outline of the operation of the test program in the embodiment of the present invention.

また、図6は、メモリリクエスト制御部210の、上述のテストプログラム実行時のメモリアクセス動作の一例を示す模式図である。   FIG. 6 is a schematic diagram showing an example of the memory access operation when the memory request control unit 210 executes the above-described test program.

なお、図6の例は、図2のギャザー命令処理時のメモリアクセス動作の例と同じ条件を使用している。すなわち、複数のベクトル要素で同一のメモリアドレスへのアクセスが指定される場合、メモリリクエスト制御部210は、ベクトルの要素番号の大きい方のベクトル要素のリクエストを代表して採用(リクエストの圧縮)して処理を行う。   Note that the example of FIG. 6 uses the same conditions as the example of the memory access operation during the gather instruction processing of FIG. That is, when access to the same memory address is specified by a plurality of vector elements, the memory request control unit 210 adopts a request of a vector element having a larger vector element number (request compression). Process.

図2の例では、ベクトル要素0からベクトル要素3のアクセスアドレスが「アドレスA」で全て一致し、さらにベクトル要素4からベクトル要素7のアクセスアドレスが「アドレスE」で全て一致するケースで、この場合、メモリリクエスト制御部210は、ベクトル要素0からベクトル要素7の8個のメモリアクセスリクエストを、ベクトル要素3およびベクトル要素7の2個のリクエストに圧縮し、それによりリクエストの数が8個から2個に削減される。   In the example of FIG. 2, the access addresses of the vector element 0 to the vector element 3 all match at “address A”, and the access addresses of the vector element 4 to the vector element 7 all match at “address E”. In this case, the memory request control unit 210 compresses the eight memory access requests from the vector element 0 to the vector element 7 into two requests of the vector element 3 and the vector element 7, thereby reducing the number of requests from eight. Reduced to 2.

そして、各メモリポートにリプライデータが返ってくると、メモリリクエスト制御部210は、保存しておいた圧縮情報から、返ってきたリプライデータAをベクトル要素0からベクトル要素3のためのベクトルレジスタへ、また、リプライデータEをベクトル要素4からベクトル要素7のためのベクトルレジスタへそれぞれ格納する。   When reply data is returned to each memory port, the memory request control unit 210 transfers the returned reply data A from the vector element 0 to the vector register for the vector element 3 from the stored compression information. In addition, the reply data E is stored in the vector registers for the vector element 4 to the vector element 7, respectively.

図5に示すように、まず、テストプログラムは試験命令列を生成する(ステップS101)。   As shown in FIG. 5, first, the test program generates a test instruction sequence (step S101).

次に、テストプログラムはこの試験命令列を制御手段200上で実行する(ステップS102)。   Next, the test program executes this test instruction sequence on the control means 200 (step S102).

この試験命令列には、メモリアクセスリクエストの圧縮が可能なリスト命令も含まれる。今、そのようなリスト命令の一つであるギャザー命令が実行される場合について図6を用いて説明する。   The test instruction sequence includes a list instruction that can compress a memory access request. Now, a case where a gather instruction which is one of such list instructions is executed will be described with reference to FIG.

図6を参照すると、当該ギャザー命令では、ベクトル要素0からベクトル要素3のアクセスアドレスAが全て一致し、ベクトル要素4からベクトル要素7のアクセスアドレスEが全て一致すると、上述したように、メモリアクセスリクエストの圧縮が行われ、メモリリクエスト制御部210はベクトル要素3およびベクトル要素7の2個のアクセスリクエストのみを発行する。これらのリクエストは、それぞれメモリポート0およびメモリポート4へ発行される。   Referring to FIG. 6, in the gather instruction, when all the access addresses A of the vector element 0 to the vector element 3 match and all the access addresses E of the vector element 4 to the vector element 7 match, as described above, the memory access The request is compressed, and the memory request control unit 210 issues only two access requests of the vector element 3 and the vector element 7. These requests are issued to the memory port 0 and the memory port 4, respectively.

このとき、メモリリクエスト制御部210は、リクエストを発行したメモリポート0およびメモリポート4に対応したリスト命令リクエスト数カウンタ部211−0の値を+1カウントアップする。他のメモリポートに対応したリスト命令リクエスト数カウンタ部211−0の値は、初期値の“0”のままとなる。   At this time, the memory request control unit 210 increments the value of the list instruction request number counter unit 211-0 corresponding to the memory port 0 and the memory port 4 that issued the request by +1. The value of the list command request counter 211-0 corresponding to another memory port remains the initial value “0”.

具体的には、メモリポート0および4のそれぞれに対応したリスト命令リクエスト数カウンタ部211−0(図4参照)のアンドゲート211−1の一方の入力にメモリリクエスト有効ビットVが「1」である信号が、また、他方の入力にリスト命令ビットLが「1」(リスト命令であることを示す。)である信号が制御部210からそれぞれ送られ、その結果、8ビットのカウンタ211−3の内容が初期値「0」から「1」にカウントアップされる。
一方、他のポートに対応したリスト命令リクエスト数カウンタ部211−0内のアンドゲート211−1の一方の入力にはメモリリクエスト有効ビットVが「0」の信号が制御部210から送られるため、カウントアップ動作は行われない。
Specifically, the memory request valid bit V is “1” at one input of the AND gate 211-1 of the list instruction request counter 211-2 (see FIG. 4) corresponding to each of the memory ports 0 and 4. A certain signal is sent from the control unit 210 to the other input and the list instruction bit L is “1” (indicating that it is a list instruction) at the other input. As a result, an 8-bit counter 211-3 is sent. Is counted up from the initial value “0” to “1”.
On the other hand, a signal having a memory request valid bit V of “0” is sent from the control unit 210 to one input of the AND gate 211-1 in the list command request counter 211-0 corresponding to another port. No count up operation is performed.

ここで、仮に、故障や設計ミスにより、メモリリクエストの圧縮が行われない場合、メモリポート0にアクセスアドレスAに対する3個のメモリリクエストが送信されることになり、そのため、カウンタ211−3が+3カウントアップされ、その内容が「3」となるため、後述するソフトウェアシミュレーションの結果と一致しなくなり、異常が発見できる。   Here, if the memory request is not compressed due to a failure or a design error, three memory requests for the access address A are transmitted to the memory port 0. Therefore, the counter 211-3 is +3. Since it is counted up and its content becomes “3”, it becomes inconsistent with the result of software simulation described later, and an abnormality can be found.

正常にメモリリクエストの圧縮が行われた場合には、その後、メモリリクエスト制御部210は、メモリポート0に返ってきたリプライデータAをベクトル要素0からベクトル要素3のためのベクトルレジスタへ、また、メモリポート4に返ってきたリプライデータEをベクトル要素4からベクトル要素7ためのベクトルレジスタにそれぞれ格納する。   When the memory request is normally compressed, the memory request control unit 210 thereafter sends the reply data A returned to the memory port 0 from the vector element 0 to the vector register for the vector element 3, and The reply data E returned to the memory port 4 is stored in the vector registers for the vector elements 4 to 7 respectively.

ステップS102において試験命令列の実行を終了すると、テストプログラムは、試験命令列に複数のメモリアクセスを一括で行うリスト命令が含まれているかどうかを判断する(ステップS103)。   When the execution of the test instruction sequence is completed in step S102, the test program determines whether the test instruction sequence includes a list instruction for performing a plurality of memory accesses at once (step S103).

リスト命令が含まれている場合は、ステップS105へ進む。   If a list command is included, the process proceeds to step S105.

ステップS105では、テストプログラムは、前述のリスト命令リクエスト数カウンタ値移送命令(図7を参照して説明した)を用いて、リスト命令リクエスト数カウンタブロック211に格納されている値をソフトウェアビジブルレジスタ230に移送する。ここでは、テストプログラムは、8ポート分のリスト命令リクエスト数カウンタ部211−0内のカウンタ211−3の値をメモリポート0からメモリポート7へとつなげて64ビットの値とし、これをリスト命令リクエスト数カウンタ値移送命令の「REG」により指定される一つの64ビットのソフトウェアビジブルレジスタに格納する。
例えば、試験命令列中に図6で説明した一つのギャザー命令のみがリスト命令として含まれていたとすると、「0100000001000000」(ビット単位で記載すると長くなるので、ここでは便宜上16進数で表記する。)という値がソフトウェアビジブルレジスタ230に移送されることになる。
もし、上述したようにメモリアクセスリクエストの圧縮が正常に行われず、メモリポート0に3個のリクエストが発行されたとすると「0300000001000000」(16進表記)という値がソフトウェアビジブルレジスタ230に移送されることになる。
In step S105, the test program uses the above-described list instruction request number counter value transfer instruction (described with reference to FIG. 7) to set the value stored in the list instruction request number counter block 211 to the software visible register 230. Transport to. Here, the test program connects the value of the counter 211-3 in the list command request counter 211-0 for eight ports from the memory port 0 to the memory port 7 to obtain a 64-bit value, which is the list command. It is stored in one 64-bit software visible register designated by “REG” of the request number counter value transfer instruction.
For example, if only one gather instruction described in FIG. 6 is included in the test instruction sequence as a list instruction, “0100000001000000” (because it becomes longer when written in bits, it is expressed in hexadecimal notation for convenience here). Is transferred to the software visible register 230.
If the compression of the memory access request is not normally performed as described above and three requests are issued to the memory port 0, the value “030000000000000” (hexadecimal notation) is transferred to the software visible register 230. become.

次にテストプログラムは、試験命令列のソフトウェアシミュレーションを実施する(ステップS106)。この時、テストプログラムは、通常の試験命令列のソフトウェアシミュレーションに加えて、リスト命令リクエスト数カウンタブロック211の動作(リスト命令リクエスト数カウンタ211−3の動作等)のソフトウェアシミュレーションも実施し、結果をソフトウェアシミュレータ実行結果記憶域320に保存する(図6の例では「0100000001000000」(16進数)となる)。   Next, the test program performs software simulation of the test instruction sequence (step S106). At this time, in addition to the software simulation of the normal test instruction sequence, the test program also performs the software simulation of the operation of the list instruction request counter block 211 (the operation of the list instruction request counter 211-3, etc.). It is stored in the software simulator execution result storage area 320 (in the example of FIG. 6, it is “010000000000000” (hexadecimal number)).

次にテストプログラムは、ステップS106で保存したリスト命令リクエスト数カウンタブロックのソフトウェアシミュレーション結果を読み出す(ステップS107)・そして、テストプログラムは、その読み出されたシミュレーション結果の値と、試験命令列中のリスト命令(ここでは図6のギャザー命令)の実際のハードウェアでの実行結果が保存されているソフトウェアビジブルレジスタ230の値との比較を行う(ステップ108)。これら両者の値が一致すれば、正常であり、一致しなければメモリアクセスリクエストの圧縮が正常に行われなかったことがわかる。   Next, the test program reads the software simulation result of the list command request counter block stored in step S106 (step S107). The test program then stores the value of the read simulation result and the test command string. The list instruction (here, the gather instruction in FIG. 6) is compared with the value of the software visible register 230 in which the actual hardware execution result is stored (step 108). If these two values match, it is normal, and if they do not match, it can be seen that compression of the memory access request was not performed normally.

なお、ステップS103で、試験命令列にリスト命令が含まれていない場合は、テストプログラムは、リスト命令リクエスト数カウンタブロック211の動作のソフトウェアシミュレーションを含まない通常の試験命令列のソフトウェアシミュレーションを実施する(ステップS104)。   If the list instruction is not included in the test instruction sequence in step S103, the test program performs a normal software simulation of the test instruction sequence that does not include the software simulation of the operation of the list instruction request counter block 211. (Step S104).

以上のようにして情報処理装置100はテストプログラムの実行を終了する。   As described above, the information processing apparatus 100 ends the execution of the test program.

上述したように、本実施形態には、リスト命令におけるメモリアクセスリクエストの圧縮処理が正しく行われたかどうかを検証することできるという効果がある。   As described above, this embodiment has an effect that it is possible to verify whether or not the compression process of the memory access request in the list instruction is correctly performed.

その理由は、実際のハードウェア上において、リスト命令が発行する実際のメモリアクセスリクエストの数をリスト命令リクエスト数カウンタブロックで計数し、その計数結果を、リスト命令のメモリアクセスリクエスト数のソフトウェアシミュレーションでの結果と比較できるようにし、メモリアクセスリクエストの圧縮処理等が正しく行われたかどうかを判断できるようにしたからである。   The reason is that the actual number of memory access requests issued by the list instruction is counted by the list instruction request counter block on the actual hardware, and the count result is obtained by software simulation of the number of memory access requests of the list instruction. This is because it can be compared with the result of the above, and it can be determined whether or not the compression processing or the like of the memory access request has been correctly performed.

10 情報処理装置
20 制御手段
21 メモリリクエスト制御部
22 ベクトルレジスタ
30 記憶手段
31 データベース記憶域
100 情報処理装置
200 制御手段
210 メモリリクエスト制御部
211 リスト命令リクエスト数カウンタブロック
211−0 リスト命令リクエスト数カウンタ部
211−1 アンドゲート
211−2 セレクタ
211−3 リスト命令リクエスト数カウンタ
211−4 +1加算器
220 ベクトルレジスタ
230 ソフトウェアビジブルレジスタ
300 記憶手段
310 データ記憶域
320 ソフトウェアシミュレータ実行結果記憶域
DESCRIPTION OF SYMBOLS 10 Information processing apparatus 20 Control means 21 Memory request control part 22 Vector register 30 Storage means 31 Database storage area 100 Information processing apparatus 200 Control means 210 Memory request control part 211 List instruction request number counter block 211-0 List instruction request number counter part 211-1 AND gate 211-2 selector 211-3 list instruction request number counter 211-4 +1 adder 220 vector register 230 software visible register 300 storage means 310 data storage area 320 software simulator execution result storage area

Claims (6)

複数のメモリポートを有するとともに複数のデータを記憶し、前記メモリポートを介して前記データへのアクセスが行われる記憶手段と、
前記記憶手段に対して複数のアクセスを一括で行うリスト命令が同一の前記ポートへの複数のメモリアクセスリクエストを発行するものである場合に、当該複数のアクセスリクエストを一つのメモリアクセスリクエストに圧縮して前記記憶手段に当該ポートを介して発行するメモリリクエスト制御手段と、
前記複数のメモリポートと一対一対応に設けられ、前記リスト命令が発行され、かつ、対応する前記ポートに前記メモリアクセスリクエストが前記メモリリクエスト制御手段から発行された場合に、該メモリアクセスリクエストの数を計数する複数のカウンタ手段と、
前記複数のカウンタ手段の内容と該カウンタ手段のソフトウェアシミュレーションの結果とを比較し、リスト命令に係わる障害の有無を判断する制御手段と
を含む情報処理装置。
Storage means having a plurality of memory ports and storing a plurality of data, wherein the data is accessed via the memory ports;
When a list instruction that performs a plurality of accesses to the storage unit collectively issues a plurality of memory access requests to the same port, the plurality of access requests are compressed into one memory access request. Memory request control means for issuing to the storage means via the port;
The number of memory access requests provided in a one-to-one correspondence with the plurality of memory ports, when the list instruction is issued, and when the memory access request is issued to the corresponding port from the memory request control means A plurality of counter means for counting
Control means for comparing the contents of the plurality of counter means and the result of software simulation of the counter means to determine the presence or absence of a failure related to the list command;
An information processing apparatus including:
前記複数のカウンタ手段の内容を連結して一つの計数値として記憶するレジスタ手段
を含むことを特徴とする請求項1記載の情報処理装置。
2. An information processing apparatus according to claim 1, further comprising register means for concatenating the contents of said plurality of counter means and storing them as one count value.
複数のメモリポートを有するとともに複数のデータを記憶し、前記メモリポートを介して前記データへのアクセスが行われる記憶手段を備えた情報処理装置において、
前記記憶手段に対して複数のアクセスを一括で行うリスト命令が、同一の前記ポートへの複数のメモリアクセスリクエストを発行するものである場合に、当該複数のアクセスリクエストを一つのメモリアクセスリクエストに圧縮して前記記憶手段に当該ポートを介して発行するメモリリクエスト制御ステップと、
前記リスト命令が発行され、かつ、前記ポートに前記メモリアクセスリクエストが前記メモリリクエスト制御ステップで発行された場合に、該メモリアクセスリクエストの数を前記ポート毎に計数する計数ステップと、
前記計数ステップでの計数結果と該計数ステップのソフトウェアシミュレーションの結果とを比較し、リスト命令に係わる障害の有無を判断する判断ステップと
を含むことを特徴とするリスト命令の検証方法。
In an information processing apparatus having a plurality of memory ports and storing a plurality of data, and having a storage means for accessing the data via the memory ports,
When a list instruction that performs a plurality of accesses to the storage unit collectively issues a plurality of memory access requests to the same port, the plurality of access requests are compressed into one memory access request. A memory request control step for issuing to the storage means via the port;
A counting step of counting the number of memory access requests for each port when the list instruction is issued and the memory access request is issued to the port in the memory request control step;
A method for verifying a list instruction, comprising: a step of comparing a count result in the counting step with a result of software simulation in the counting step to determine whether there is a fault related to the list instruction.
前記ポート毎に計数された計数値を一つに連結してレジスタ手段に記憶する記憶ステップを含むことを特徴とする請求項記載のリスト命令の検証方法。 4. The list instruction verification method according to claim 3 , further comprising a storage step of concatenating the count values counted for each port into one and storing them in a register means. 複数のメモリポートを有するとともに複数のデータを記憶し、前記メモリポートを介して前記データへのアクセスが行われる記憶手段を備えた情報処理装置において、
前記記憶手段に対して複数のアクセスを一括で行うリスト命令が、同一の前記ポートへの複数のメモリアクセスリクエストを発行するものである場合に、当該複数のアクセスリクエストを一つのメモリアクセスリクエストに圧縮して前記記憶手段に当該ポートを介して発行するメモリリクエスト制御処理と、
前記リスト命令が発行され、かつ、前記ポートに前記メモリアクセスリクエストが前記メモリリクエスト制御処理で発行された場合に、該メモリアクセスリクエストの数を前記ポート毎に計数する計数処理と、
前記計数処理での計数結果と該計数処理のソフトウェアシミュレーションの結果とを比較し、リスト命令に係わる障害の有無を判断する判断処理と
をコンピュータに実行
させることを特徴とするリスト命令の検証のためのプログラム。
In an information processing apparatus having a plurality of memory ports and storing a plurality of data, and having a storage means for accessing the data via the memory ports,
When a list instruction that performs a plurality of accesses to the storage unit collectively issues a plurality of memory access requests to the same port, the plurality of access requests are compressed into one memory access request. A memory request control process to be issued to the storage means via the port;
A counting process for counting the number of memory access requests for each port when the list instruction is issued and the memory access request is issued to the port by the memory request control process;
For verifying the list instruction, the computer executes a determination process for comparing the counting result of the counting process with the result of the software simulation of the counting process and determining whether there is a fault related to the list instruction. Program.
前記ポート毎に計数された計数値を一つに連結してレジスタ手段に記憶する記憶処理を前記コンピュータに実行させることを特徴とする請求項記載のプログラム。 6. A program according to claim 5 , wherein said computer is caused to execute a storage process of concatenating count values counted for each port into one and storing them in a register means.
JP2012059556A 2012-03-16 2012-03-16 Information processing device having list command verification function, list command verification method, and program for list command verification Active JP5882800B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012059556A JP5882800B2 (en) 2012-03-16 2012-03-16 Information processing device having list command verification function, list command verification method, and program for list command verification

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012059556A JP5882800B2 (en) 2012-03-16 2012-03-16 Information processing device having list command verification function, list command verification method, and program for list command verification

Publications (2)

Publication Number Publication Date
JP2013196068A JP2013196068A (en) 2013-09-30
JP5882800B2 true JP5882800B2 (en) 2016-03-09

Family

ID=49395001

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012059556A Active JP5882800B2 (en) 2012-03-16 2012-03-16 Information processing device having list command verification function, list command verification method, and program for list command verification

Country Status (1)

Country Link
JP (1) JP5882800B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114594991A (en) 2020-12-03 2022-06-07 意法半导体股份有限公司 Hardware accelerator device, corresponding system and operating method
US11742049B2 (en) * 2020-12-03 2023-08-29 Stmicroelectronics S.R.L. Hardware accelerator device, corresponding system and method of operation

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60220467A (en) * 1984-04-17 1985-11-05 Fujitsu Ltd Access control circuit of vector register
JPS61128371A (en) * 1984-11-28 1986-06-16 Hitachi Ltd Vector processor
JPH0520350A (en) * 1991-07-10 1993-01-29 Koufu Nippon Denki Kk Vector processing device

Also Published As

Publication number Publication date
JP2013196068A (en) 2013-09-30

Similar Documents

Publication Publication Date Title
US11609762B2 (en) Systems and methods to load a tile register pair
US9298593B2 (en) Testing a software interface for a streaming hardware device
US8990451B2 (en) Controller for direct access to a memory for the direct transfer of data between memories of several peripheral devices, method and computer program enabling the implementation of such a controller
KR102287677B1 (en) Data accessing method, apparatus, device, and storage medium
US20170063401A1 (en) Partial ecc mechanism for a byte-write capable register
US9436450B2 (en) Method and apparatus for optimising computer program code
JP7135853B2 (en) Reduce buffer overflow
US9690722B2 (en) Memory controller and memory access method
US9262625B2 (en) Address translation/specification field for hardware accelerator
KR20090127689A (en) Memory test device and testing method for memory
JP5882800B2 (en) Information processing device having list command verification function, list command verification method, and program for list command verification
JPS59231652A (en) Detection system for memory access overlap
US20120239826A1 (en) System authorizing direct data transfers between memories of several components of that system
US20170186498A1 (en) Hardware apparatuses and methods to check data storage devices for transient faults
US9218442B2 (en) Firmware and hardware verification using Opcode comparison
TWI766056B (en) Method, apparatus, computer program, and computer-readable storage medium for data processing
US20190369997A1 (en) Simulation device, simulation method, and computer readable medium
JP7335952B2 (en) Generating vector predicate summaries
JP7124608B2 (en) Calculator and calculation method
US8589735B2 (en) Creating randomly ordered fields while maintaining the temporal ordering based on the value of the fields
US11809869B2 (en) Systems and methods to store a tile register pair to memory
CN112416687B (en) Method and system for verifying access operation, verification device and storage medium
US8447932B2 (en) Recover store data merging
GB2621164A (en) Apparatus, method of operating an apparatus and a computer program
JP3291391B2 (en) Arithmetic unit test equipment

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20140819

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150216

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20151027

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20151104

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20151210

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160204

R150 Certificate of patent or registration of utility model

Ref document number: 5882800

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150