JP7102963B2 - 演算処理装置、及び制御方法 - Google Patents
演算処理装置、及び制御方法 Download PDFInfo
- Publication number
- JP7102963B2 JP7102963B2 JP2018114403A JP2018114403A JP7102963B2 JP 7102963 B2 JP7102963 B2 JP 7102963B2 JP 2018114403 A JP2018114403 A JP 2018114403A JP 2018114403 A JP2018114403 A JP 2018114403A JP 7102963 B2 JP7102963 B2 JP 7102963B2
- Authority
- JP
- Japan
- Prior art keywords
- load
- processor
- instruction
- test
- store
- 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
- 238000012545 processing Methods 0.000 title claims description 88
- 238000000034 method Methods 0.000 title claims description 69
- 230000015654 memory Effects 0.000 claims description 48
- 238000012360 testing method Methods 0.000 description 186
- 238000012986 modification Methods 0.000 description 23
- 230000004048 modification Effects 0.000 description 23
- 238000010586 diagram Methods 0.000 description 14
- 230000006870 function Effects 0.000 description 14
- 238000001514 detection method Methods 0.000 description 12
- 238000012805 post-processing Methods 0.000 description 4
- 238000012790 confirmation Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000005856 abnormality Effects 0.000 description 1
- 230000000052 comparative effect Effects 0.000 description 1
- 238000000275 quality assurance Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3824—Operand accessing
- G06F9/3834—Maintaining memory consistency
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3836—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
Description
〔1-1〕一実施形態に係る演算処理装置のハードウェア構成例
図1は、実施形態の一例としての演算処理装置1のハードウェア構成を例示する図である。
本演算処理装置における順序保証試験のハードウェア構成例について、図2を用いて説明する。
本演算処理装置における機能構成について、図4~図8を参照しながら、図3を用いて説明する。
上述の如く構成された実施形態の一例として、演算処理装置1における順序保証試験の制御処理を、図9に示すフローチャート(ステップS1~S16)に従って説明する。なお、ここでは、順序保証試験として、同一アドレスに対するアクセス試験について説明する。
上記図1~図11では2つのプロセッサ10で構成されるペア単位で順序保証試験を実施するものとしたが、本変形例では、マルチコアのプロセッサ10を備える演算処理装置1にて、2つのコアで構成されるペア単位で実施する順序保証試験について説明する。
図12は、実施形態の変形例に係る演算処理装置1のハードウェア構成を例示する図である。
〔2-2〕変形例に係る演算処理装置における順序保証試験のハードウェア構成例
本変形例に係る演算処理装置1における順序保証試験のハードウェア構成例について、図13を用いて説明する。
上述のように、一実施形態及び変形例に係る演算処理装置1では、連続ロード命令発行部25が連続してロード命令を発行する。これにより、同一アドレスに対するアクセスの間隔を短くできる。
上述した一実施形態及び変形例に係る技術は、以下のように変形、変更して実施することができる。
以上の実施形態に関し、さらに以下の付記を開示する。
データを記憶するメモリと、
前記メモリに対して、データをそれぞれ読み出す複数のロード命令を連続して発行する第一プロセッサと、
前記メモリに対して、前記複数のロード命令の実行中にストア命令を発行する第二プロセッサと、
前記第一プロセッサによって前記メモリからロードされたデータに含まれる値に基づき順序性が保証されているかを判定する順序性判定部と、
を備える、
ことを特徴とする演算処理装置。
前記第二プロセッサは、前記第一プロセッサによる前記ロード命令の対象となる領域と同一の領域に対して、前記ストア命令を発行する、
ことを特徴とする付記1記載の演算処理装置。
前記第二プロセッサは、前記順序性判定部が判定を行なう度に、前記ストア命令を発行するタイミングを変更し、
前記第一プロセッサによる前記ロード命令の発行、前記第二プロセッサによる前記ストア命令の発行、及び、前記第一プロセッサによる前記比較と前記判定とを繰り返し行なう、
ことを特徴とする付記1又は2記載の演算処理装置。
第一プロセッサが、データを記憶するメモリに対して、データをそれぞれ読み出す複数のロード命令を連続して発行する第一の処理と、
第二プロセッサが、前記メモリに対して、前記複数のロード命令の実行中にストア命令を発行する第二の処理と、
前記第一プロセッサによって前記メモリからロードされたデータに含まれる値に基づき順序性が保証されているかを判定する第三の処理と、
を備える、
ことを特徴とする制御方法。
前記第二プロセッサは、前記第一プロセッサによる前記ロード命令の対象となる領域と同一の領域に対して、前記ストア命令を発行する、
ことを特徴とする付記4記載の制御方法。
前記第二プロセッサは、前記順序性判定部が判定を行なう度に、前記ストア命令を発行するタイミングを変更し、
前記第一の処理、前記第二の処理、及び、前記第三の処理を繰り返し行なう、
ことを特徴とする付記4又は5記載の制御方法。
10 CPU(試験対象プロセッサ,試験補助プロセッサ)
11 記憶部
12 メモリ
13 IF部
14 I/O
15 バス
17 コア
21 初期化部
22 試験部
23 後処理部
24 エラー通知部
25 連続ロード命令発行部
26 結果保存部
27 エラーチェック部(順序保証判定部)
31 待機命令発行部
32 補助ストア命令発行部
100 試験プログラム
101 試験対象プロセッサ用試験プログラム
102 試験補助プロセッサ用試験プログラム
121 試験対象領域
122 ロード値保存領域
Claims (4)
- 同一アドレスに対するアクセスに際し後続のロード命令またはストア命令が先のロード命令またはストア命令よりも先に実行される追い越しを許可しない演算処理装置であって、
データを記憶するメモリと、
前記メモリの前記同一アドレスに対して、データをそれぞれ読み出す複数のロード命令を連続して発行する第一プロセッサと、
前記メモリの前記同一アドレスに対して、前記複数のロード命令の実行中にストア命令を一回発行する第二プロセッサと、
前記第一プロセッサによって前記メモリからロードされたデータに含まれる値に基づき、前記追い越しの発生の有無を判定し順序保証の判定結果として出力する順序保証判定部と、
を備え、
前記順序保証判定部は、前記複数のロード命令によって前記メモリの前記同一アドレスからロードされるロード値が、前記同一アドレスに設定された初期値と、前記ストア命令によってストアされた、当該初期値とは異なる値との間で変化する回数に基づき、前記追い越しの発生の有無を判定する、
ことを特徴とする演算処理装置。 - 前記第二プロセッサは、前記第一プロセッサによる前記ロード命令の対象となる領域と同一の領域に対して、前記ストア命令を発行する、
ことを特徴とする請求項1記載の演算処理装置。 - 前記第二プロセッサは、前記順序保証判定部が判定を行なう度に、前記ストア命令を発行するタイミングを変更し、
前記第一プロセッサによる前記ロード命令の発行、前記第二プロセッサによる前記ストア命令の発行、及び、前記第一プロセッサによる前記判定を繰り返し行なう、
ことを特徴とする請求項1又は2記載の演算処理装置。 - 同一アドレスに対するアクセスに際し後続のロード命令またはストア命令が先のロード命令またはストア命令よりも先に実行される追い越しを許可しない演算処理装置の制御方法であって、
第一プロセッサが、データを記憶するメモリの前記同一アドレスに対して、データをそれぞれ読み出す複数のロード命令を連続して発行する第一の処理と、
第二プロセッサが、前記メモリの前記同一アドレスに対して、前記複数のロード命令の実行中にストア命令を一回発行する第二の処理と、
前記第一プロセッサによって前記メモリからロードされたデータに含まれる値に基づき、前記追い越しの発生の有無を判定し順序保証の判定結果として出力する第三の処理と、
を備え、
前記第三の処理において、前記第一プロセッサは、前記複数のロード命令によって前記メモリの前記同一アドレスからロードされるロード値が、前記同一アドレスに設定された初期値と、前記ストア命令によってストアされた、当該初期値とは異なる値との間で変化する回数に基づき、前記追い越しの発生の有無を判定する、
ことを特徴とする制御方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018114403A JP7102963B2 (ja) | 2018-06-15 | 2018-06-15 | 演算処理装置、及び制御方法 |
US16/419,040 US11500639B2 (en) | 2018-06-15 | 2019-05-22 | Arithmetic processing apparatus and control method using ordering property |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018114403A JP7102963B2 (ja) | 2018-06-15 | 2018-06-15 | 演算処理装置、及び制御方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2019219717A JP2019219717A (ja) | 2019-12-26 |
JP7102963B2 true JP7102963B2 (ja) | 2022-07-20 |
Family
ID=68839328
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018114403A Active JP7102963B2 (ja) | 2018-06-15 | 2018-06-15 | 演算処理装置、及び制御方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US11500639B2 (ja) |
JP (1) | JP7102963B2 (ja) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050060600A1 (en) | 2003-09-12 | 2005-03-17 | Jeddeloh Joseph M. | System and method for on-board timing margin testing of memory modules |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5737636A (en) * | 1996-01-18 | 1998-04-07 | International Business Machines Corporation | Method and system for detecting bypass errors in a load/store unit of a superscalar processor |
JP2001222442A (ja) * | 2000-02-08 | 2001-08-17 | Fujitsu Ltd | パイプライン試験方法、パイプライン試験命令生成方法及びその記憶媒体 |
JP4461934B2 (ja) * | 2004-07-13 | 2010-05-12 | 富士通株式会社 | キャッシュメモリ試験システム、試験方法、試験プログラム |
GB0623934D0 (en) * | 2006-11-29 | 2007-01-10 | Ibm | Testing the compliance of a design with the synchronization requirements of a memory model |
US10067762B2 (en) * | 2016-07-01 | 2018-09-04 | Intel Corporation | Apparatuses, methods, and systems for memory disambiguation |
US10891071B2 (en) * | 2018-05-15 | 2021-01-12 | Nxp Usa, Inc. | Hardware, software and algorithm to precisely predict performance of SoC when a processor and other masters access single-port memory simultaneously |
-
2018
- 2018-06-15 JP JP2018114403A patent/JP7102963B2/ja active Active
-
2019
- 2019-05-22 US US16/419,040 patent/US11500639B2/en active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050060600A1 (en) | 2003-09-12 | 2005-03-17 | Jeddeloh Joseph M. | System and method for on-board timing margin testing of memory modules |
Also Published As
Publication number | Publication date |
---|---|
US20190384610A1 (en) | 2019-12-19 |
JP2019219717A (ja) | 2019-12-26 |
US11500639B2 (en) | 2022-11-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6660991B2 (ja) | マルチスレッドプロセッサでのタスクのスケジューリング | |
US10241880B2 (en) | Efficient validation/verification of coherency and snoop filtering mechanisms in computing systems | |
US9734033B2 (en) | Implementing processor functional verification by generating and running constrained random irritator tests for multiple processor system and processor core with multiple threads | |
US20140317628A1 (en) | Memory apparatus for processing support of long routing in processor, and scheduling apparatus and method using the memory apparatus | |
US11036673B2 (en) | Assigning identifiers to processing units in a column to repair a defective processing unit in the column | |
US20130152048A1 (en) | Test method, processing device, test program generation method and test program generator | |
JP2011086298A (ja) | プログラム・フロー制御 | |
JP6205168B2 (ja) | 並列構造化重複検出を利用する並列モデル検査のためのシステムおよび方法 | |
US9354850B2 (en) | Method and apparatus for instruction scheduling using software pipelining | |
JP2005235135A (ja) | ベクトル処理装置、及び、追い越し制御回路 | |
JP4865016B2 (ja) | プロセッサ | |
US20110131031A1 (en) | Dynamic generation of tests | |
JP7102963B2 (ja) | 演算処理装置、及び制御方法 | |
CN111522648B (zh) | 一种区块链的交易处理方法、装置及电子设备 | |
US9218273B2 (en) | Automatic generation of a resource reconfiguring test | |
US20110320784A1 (en) | Verification of processor architectures allowing for self modifying code | |
CN107665169B (zh) | 处理器程序的测试方法和装置 | |
US9934118B2 (en) | Reducing SPQL tester time for the critical paths stress test | |
US11119873B2 (en) | Processor repair | |
CN111383704B (zh) | 一种存储器内建自测试电路和对存储器的测试方法 | |
CN107423029B (zh) | 计算单元 | |
US20110320783A1 (en) | Verification using opcode compare | |
US20140013312A1 (en) | Source level debugging apparatus and method for a reconfigurable processor | |
US20130311164A1 (en) | Dynamic generation of test segments | |
US20130205171A1 (en) | First and second memory controllers for reconfigurable computing apparatus, and reconfigurable computing apparatus capable of processing debugging trace data |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20190607 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20210310 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20220112 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20220208 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220405 |
|
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: 20220607 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20220620 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7102963 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |