JP7601434B2 - 集積回路、コンピュータシステムおよびデータ処理方法 - Google Patents
集積回路、コンピュータシステムおよびデータ処理方法 Download PDFInfo
- Publication number
- JP7601434B2 JP7601434B2 JP2023034908A JP2023034908A JP7601434B2 JP 7601434 B2 JP7601434 B2 JP 7601434B2 JP 2023034908 A JP2023034908 A JP 2023034908A JP 2023034908 A JP2023034908 A JP 2023034908A JP 7601434 B2 JP7601434 B2 JP 7601434B2
- Authority
- JP
- Japan
- Prior art keywords
- address
- memory
- register
- load packet
- address register
- 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
- 238000003672 processing method Methods 0.000 title claims description 5
- 238000010586 diagram Methods 0.000 description 32
- 238000001514 detection method Methods 0.000 description 15
- 239000011159 matrix material Substances 0.000 description 11
- 238000000034 method Methods 0.000 description 9
- 230000004044 response Effects 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 230000010354 integration Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000015556 catabolic process Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Landscapes
- Executing Machine-Instructions (AREA)
- Memory System (AREA)
Description
スカラーユニット502は、自部に提供される各種の命令をデコードし、各種のスカラ演算を実行する演算回路である。
ベクトルユニット503は、各種のベクトル演算を行う演算回路である。
ロードパケット生成回路505は、データの読み出しの指示を通知するためのロードパケットを生成する。ロードパケット生成回路505は、生成したロードパケットをメモリシステム504に出力する。
ベクトルユニット601は、ベクトルレジスタファイル602と演算器603を含んで構成される。ベクトルレジスタファイル602は、1個または複数個のベクトルレジスタを備える。個々のベクトルレジスタは、複数の要素レジスタを備える。ベクトルレジスタファイル602におけるベクトルレジスタの個数は1個または2個以上であれば、何個であってもよい。個々のベクトルレジスタにおける要素レジスタの個数は、2個以上であれば何個であってもよい。以下の説明では、ベクトルレジスタファイル602におけるベクトルレジスタの個数を64個とし、個々のベクトルレジスタにおける要素レジスタの個数を64個とする場合を例示する。ロードパケット生成回路701は、個々のベクトルレジスタから8個の要素レジスタにそれぞれ格納されたメモリアドレスを同時に読み出し可能と仮定する。
ロードパケット生成回路701は、複数要素検出回路702とロードパケット発行回路703を含んで構成される。複数要素検出回路702は、ベクトルレジスタから読み出される8個のメモリアドレスを特定し、メモリシステムにおいて特定したメモリアドレスで指示される要素領域を複数個含む処理単位の有無を検出する。
ベクトルユニット1902は、メモリシステム1907から受信したリプライパケット1909に格納されるデータ要素をベクトルレジスタに書き込む。
図20は、本実施形態に係るベクトルユニット1902からロードパケット生成回路1903へのメモリアドレスの送信例を示す説明図である。ベクトルユニット1902は、ベクトルレジスタファイル2001のベクトルレジスタから、ベクトルギャザー指示で指示されるメモリアドレスが格納されている要素領域からアドレス要素を読み出す。アドレス要素は、メモリアドレスの要素をなすデータ素片である。ベクトルユニット1902は、読み出したアドレス要素をロードパケット生成回路1903に送信する。図20の例では、64個のアドレス要素0 2002~63 2003が、ベクトルレジスタから8要素ずつ順次読み出されロードパケット生成回路1903に送信される。
(A2)アドレスレジスタAの上位アドレスとアドレスレジスタCの上位アドレスが一致するとき、アドレスレジスタAとアドレスレジスタCのそれぞれに格納されたメモリアドレスに格納されるデータ要素を取得するための1つのロードパケットを生成し、アドレスレジスタCの使用状態情報に示される使用状態を使用済に変更する。
(A4)アドレスレジスタAの上位アドレスとアドレスレジスタEの上位アドレスが一致するとき、アドレスレジスタAとアドレスレジスタEのそれぞれに格納されたメモリアドレスに格納されるデータ要素を取得するための1つのロードパケットを生成し、アドレスレジスタEの使用状態情報に示される使用状態を使用済に変更する。
(A6)アドレスレジスタAの上位アドレスとアドレスレジスタGの上位アドレスが一致するとき、アドレスレジスタAとアドレスレジスタGのそれぞれに格納されたメモリアドレスに格納されるデータ要素を取得するための1つのロードパケットを生成し、アドレスレジスタGの使用状態情報に示される使用状態を使用済みに変更する。
(A8)アドレスレジスタAの上位アドレスとアドレスレジスタB~Hの上位アドレスのいずれもが一致しないとき、アドレスレジスタAに格納されたメモリアドレスに格納されるデータ要素だけを取得するための1つのロードパケットを生成する。
(B2)アドレスレジスタBの上位アドレスとアドレスレジスタDの上位アドレスが一致するとき、アドレスレジスタBとアドレスレジスタDのそれぞれに格納されたメモリアドレスに格納されるデータ要素を取得するための1つのロードパケットを生成し、アドレスレジスタDの使用状態情報に示される使用状態を使用済みに変更する。
(B4)アドレスレジスタBの上位アドレスとアドレスレジスタFの上位アドレスが一致するとき、アドレスレジスタBとアドレスレジスタFのそれぞれに格納されたメモリアドレスに格納されるデータ要素を取得するための1つのロードパケットを生成し、アドレスレジスタFの使用状態情報に示される使用状態を使用済に変更する。
(B6)アドレスレジスタBの上位アドレスとアドレスレジスタHの上位アドレスが一致するとき、アドレスレジスタBとアドレスレジスタHのそれぞれに格納されたメモリアドレスに格納されるデータ要素を取得するための1つのロードパケットを生成し、アドレスレジスタHの使用状態情報に示される使用状態を使用済に変更する。
(B7)アドレスレジスタBの上位アドレスとアドレスレジスタC~Hの上位アドレスのいずれもが一致しないとき、アドレスレジスタBに格納されたメモリアドレスに格納されるデータ要素だけを取得するための1つのロードパケットを生成する。
(C2)アドレスレジスタCの上位アドレスとアドレスレジスタEの上位アドレスが一致するとき、アドレスレジスタCとアドレスレジスタEのそれぞれに格納されたメモリアドレスに格納されるデータ要素を取得するための1つのロードパケットを生成し、アドレスレジスタEの使用状態情報に示される使用状態を使用済に変更する。
(C4)アドレスレジスタCの上位アドレスとアドレスレジスタGの上位アドレスが一致するとき、アドレスレジスタCとアドレスレジスタGのそれぞれに格納されたメモリアドレスに格納されるデータ要素を取得するための1つのロードパケットを生成し、アドレスレジスタGの使用状態情報に示される使用状態を使用済みに変更する。
(C6)アドレスレジスタCの上位アドレスとアドレスレジスタD~Hの上位アドレスのいずれもが一致しないとき、アドレスレジスタCに格納されたメモリアドレスに格納されるデータ要素だけを取得するための1つのロードパケットを生成する。
(D2)アドレスレジスタDの上位アドレスとアドレスレジスタFの上位アドレスが一致するとき、アドレスレジスタDとアドレスレジスタFのそれぞれに格納されたメモリアドレスに格納されるデータ要素を取得するための1つのロードパケットを生成し、アドレスレジスタFの使用状態情報に示される使用状態を使用済に変更する。
(D4)アドレスレジスタDの上位アドレスとアドレスレジスタHの上位アドレスが一致するとき、アドレスレジスタDとアドレスレジスタHのそれぞれに格納されたメモリアドレスに格納されるデータ要素を取得するための1つのロードパケットを生成し、アドレスレジスタHの使用状態情報に示される使用状態を使用済に変更する。
(D5)アドレスレジスタDの上位アドレスとアドレスレジスタE~Hの上位アドレスのいずれもが一致しないとき、アドレスレジスタDに格納されたメモリアドレスに格納されるデータ要素だけを取得するための1つのロードパケットを生成する。
(E2)アドレスレジスタEの上位アドレスとアドレスレジスタGの上位アドレスが一致するとき、アドレスレジスタEとアドレスレジスタGのそれぞれに格納されたメモリアドレスに格納されるデータ要素を取得するための1つのロードパケットを生成し、アドレスレジスタGの使用状態情報に示される使用状態を使用済みに変更する。
(E4)アドレスレジスタEの上位アドレスとアドレスレジスタF~Hの上位アドレスのいずれもが一致しないとき、アドレスレジスタEに格納されたメモリアドレスに格納されるデータ要素だけを取得するための1つのロードパケットを生成する。
(F2)アドレスレジスタFの上位アドレスとアドレスレジスタHの上位アドレスが一致するとき、アドレスレジスタFとアドレスレジスタHのそれぞれに格納されたメモリアドレスに格納されるデータ要素を取得するための1つのロードパケットを生成し、アドレスレジスタHの使用状態情報に示される使用状態を使用済に変更する。
(F3)アドレスレジスタFの上位アドレスとアドレスレジスタG、Hの上位アドレスのいずれもが一致しないとき、アドレスレジスタFに格納されたメモリアドレスに格納されるデータ要素だけを取得するための1つのロードパケットを生成する。
(G2)アドレスレジスタGの上位アドレスとアドレスレジスタHの上位アドレスと一致しないとき、アドレスレジスタGに格納されたメモリアドレスに格納されるデータ要素だけを取得するための1つのロードパケットを生成する。
2個のデータ要素の読み出しに係るロードパケットを生成する際、ロードパケット発行回路は、特定された2個のメモリアドレスのそれぞれのオフセットと要素番号としてオフセット0、1と要素番号0、1をそれぞれ対応付けて含める。また、ロードパケット発行回路は、それらのメモリアドレスの上位アドレスと、種別として読み出しに係る要素数2をロードパケットに含める。
この構成によれば、上位アドレスを用いて、指示されるメモリアドレスに対応する複数の要素領域を有する処理単位の存在の有無が判定され、その処理単位を示す上位アドレスがメモリシステム2104に通知される。そのため、メモリシステム2104は、データ要素の読み出しに係る処理単位を容易に特定することができる。
この構成によれば、読み出し対象となる有効なデータ要素の個数がメモリシステム2104に通知される。
この構成によれば、読み出し対象となる有効なデータ要素がメモリシステム2104に通知される。
この構成によれば、ロードパケットの出力によりデータ要素の読み出し対象として指示したメモリアドレスに対して、再度のデータ要素を読み出すことが回避される。
この構成により、メモリシステム2104にデータ要素の書き込み先とするベクトルレジスタ番号を通知し、読み出し対象とするデータ要素とともに当該ベクトルレジスタ番号を含むリプライパケットを生成させることができる。データ要素の書き込みにおいて、ロードパケットの送信に対するリプライパケットの受信状態を管理せずに、リプライパケットを参照してデータ要素の書き込み先とするベクトルレジスタを特定することができる。
Claims (8)
- 取得されるベクトルギャザー命令で指示される複数のメモリアドレスにそれぞれ対応する要素領域を複数個含む処理単位がメモリシステムに存在するか否かを判定し、
前記処理単位が存在する場合、当該処理単位における前記要素領域ごとの要素番号とオフセットを示すロードパケットを前記メモリシステムに出力し、
前記メモリシステムから入力されるリプライパケットの前記要素番号に対応して含まれるデータ要素をベクトルレジスタに書き込み、
前記メモリアドレスを格納するアドレスレジスタを備え、
使用状態を未使用とするアドレスレジスタに格納されるメモリアドレスに対応する要素領域を複数個含む処理単位が存在するか否かを判定し、
前記ロードパケットを出力するとき、前記複数の要素領域に対応するメモリアドレスが記憶されているアドレスレジスタの使用状態を使用済に変更する
演算回路。 - 前記メモリアドレスは、それぞれ上位アドレスとオフセットを有し、
複数のメモリアドレス間で上位アドレスが同一であるとき、
前記複数のメモリアドレスのそれぞれに対応する要素領域を複数個含む処理単位が存在すると判定し、
前記ロードパケットに前記同一の上位アドレスを含める
請求項1に記載の演算回路。 - 前記ロードパケットに上位アドレスが同一な前記メモリアドレスの要素数を含める
請求項1に記載の演算回路。 - 前記ロードパケットに前記要素番号の有効性を示す有効性フラグを含める
請求項1に記載の演算回路。 - 前記ロードパケットに前記ベクトルレジスタのベクトルレジスタ番号を含める
請求項1に記載の演算回路。 - 演算回路とメモリシステムを備えるコンピュータシステムであって、
前記演算回路は、
取得されるベクトルギャザー命令で指示される複数のメモリアドレスにそれぞれ対応する要素領域を複数個含む処理単位が前記メモリシステムに存在するか否かを判定し、
前記処理単位が存在する場合、当該処理単位における前記要素領域ごとの要素番号とオフセットを示すロードパケットを前記メモリシステムに出力し、
前記メモリシステムから入力されるリプライパケットの前記要素番号に対応して含まれるデータ要素をベクトルレジスタに書き込み、
前記メモリシステムは、
前記処理単位から前記ロードパケットで指示されるオフセットごとにデータ要素を読み出し、
当該データ要素と前記オフセットに対応する要素番号を含む前記リプライパケットを生成する
コンピュータシステム。 - 前記ロードパケットに前記ベクトルレジスタのベクトルレジスタ番号を含める前記演算回路を複数個備える請求項6に記載のコンピュータシステム。
- 演算回路におけるデータ処理方法であって、
前記演算回路は、メモリアドレスを格納するアドレスレジスタを備え、
前記演算回路が、
取得されるベクトルギャザー命令で指示される複数のメモリアドレスにそれぞれ対応する要素領域を複数個含む処理単位がメモリシステムに存在するか否かを判定し、
前記処理単位が存在する場合、当該処理単位における前記要素領域ごとの要素番号とオフセットを示すロードパケットを前記メモリシステムに出力し、
前記メモリシステムから入力されるリプライパケットの前記要素番号に対応して含まれるデータ要素をベクトルレジスタに書き込み、
使用状態を未使用とするアドレスレジスタに格納されるメモリアドレスに対応する要素領域を複数個含む処理単位が存在するか否かを判定し、
前記ロードパケットを出力するとき、前記複数の要素領域に対応するメモリアドレスが記憶されているアドレスレジスタの使用状態を使用済に変更する
データ処理方法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2023034908A JP7601434B2 (ja) | 2023-03-07 | 2023-03-07 | 集積回路、コンピュータシステムおよびデータ処理方法 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2023034908A JP7601434B2 (ja) | 2023-03-07 | 2023-03-07 | 集積回路、コンピュータシステムおよびデータ処理方法 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2024126505A JP2024126505A (ja) | 2024-09-20 |
| JP7601434B2 true JP7601434B2 (ja) | 2024-12-17 |
Family
ID=92761817
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2023034908A Active JP7601434B2 (ja) | 2023-03-07 | 2023-03-07 | 集積回路、コンピュータシステムおよびデータ処理方法 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP7601434B2 (ja) |
Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2010218350A (ja) | 2009-03-18 | 2010-09-30 | Nec Corp | 情報処理装置 |
| JP2013182420A (ja) | 2012-03-01 | 2013-09-12 | Nec Corp | ベクトル処理装置およびベクトル処理方法 |
| JP2020052862A (ja) | 2018-09-28 | 2020-04-02 | 日本電気株式会社 | 計算機および計算方法 |
-
2023
- 2023-03-07 JP JP2023034908A patent/JP7601434B2/ja active Active
Patent Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2010218350A (ja) | 2009-03-18 | 2010-09-30 | Nec Corp | 情報処理装置 |
| JP2013182420A (ja) | 2012-03-01 | 2013-09-12 | Nec Corp | ベクトル処理装置およびベクトル処理方法 |
| JP2020052862A (ja) | 2018-09-28 | 2020-04-02 | 日本電気株式会社 | 計算機および計算方法 |
Also Published As
| Publication number | Publication date |
|---|---|
| JP2024126505A (ja) | 2024-09-20 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US20220237041A1 (en) | Parallel processing system performing in-memory processing | |
| US9164951B2 (en) | Multiprocessor system, execution control method and execution control program | |
| JP6961997B2 (ja) | 情報処理装置、メモリ制御装置および情報処理装置の制御方法 | |
| JPWO2008023576A1 (ja) | 混合モード並列プロセッサシステム、混合モード並列プロセッサ方法、および、混合モード並列プロセッサプログラム | |
| JP2002373115A (ja) | 共有キャッシュメモリのリプレイスメント制御方法及びその装置 | |
| US8145804B2 (en) | Systems and methods for transferring data to maintain preferred slot positions in a bi-endian processor | |
| US20150070957A1 (en) | Semiconductor device and method of writing/reading entry address into/from semiconductor device | |
| US6684267B2 (en) | Direct memory access controller, and direct memory access control method | |
| US20170060748A1 (en) | Processor and control method of processor | |
| JP5856434B2 (ja) | バス接続回路、半導体装置及びバス接続回路の動作方法 | |
| WO2015033551A1 (ja) | ストアマージ処理装置、ストアマージ処理システム、ストアマージ処理方法、及び、記憶媒体 | |
| JP7601434B2 (ja) | 集積回路、コンピュータシステムおよびデータ処理方法 | |
| CN102156676B (zh) | 高速缓存系统 | |
| JPWO2003010774A1 (ja) | 連想メモリ・システムおよびネットワーク機器およびネットワーク・システム | |
| JP5630281B2 (ja) | ベクトル命令制御回路及びリストベクトルの追い越し制御方法 | |
| JP7408954B2 (ja) | メモリ制御方法、メモリ制御装置、プログラム | |
| US9081673B2 (en) | Microprocessor and memory access method | |
| JP2022011449A (ja) | 演算処理プログラム、演算処理方法および演算処理装置 | |
| JP5182284B2 (ja) | ベクトル処理装置 | |
| JP2023082311A (ja) | 演算装置 | |
| JP7078380B2 (ja) | 命令制御装置、命令制御方法およびプログラム | |
| CN114072776B (zh) | 小面积高速缓冲存储器 | |
| JP2020009146A (ja) | 共有型fifo装置 | |
| JP2006251916A (ja) | Dma転送システム及びdma転送方法 | |
| WO2023047762A1 (ja) | プロセッサおよびエンディアン変換方法 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20230307 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20240604 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20240710 |
|
| 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: 20241105 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20241128 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 7601434 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |