ARITHMETIC PROCESSING DEVICE AND METHOD FOR CONTROLLING ARITHMETIC PROCESSING DEVICE
To provide an arithmetic processing device for flexibly suppressing speculative execution which causes the vulnerability of a processor.SOLUTION: A method includes: a barrier setting and instruction decoder for determining whether a barrier setting condition corresponds to a barrier setting conditio...
Saved in:
Main Author | |
---|---|
Format | Patent |
Language | English Japanese |
Published |
21.11.2019
|
Subjects | |
Online Access | Get full text |
Cover
Loading…
Summary: | To provide an arithmetic processing device for flexibly suppressing speculative execution which causes the vulnerability of a processor.SOLUTION: A method includes: a barrier setting and instruction decoder for determining whether a barrier setting condition corresponds to a barrier setting condition register and whether a fetch instruction corresponds to the barrier setting condition set in the barrier setting condition register, adding a barrier micro instruction after the fetch instruction when they correspond, and assigning an execution instruction and the barrier micro instruction to an execution queue part corresponding to the respective instructions; and a first execution queue part and a memory access control part for issuing and executing a memory access instruction being one type of the execution instruction and the barrier micro instruction in an out-of-order manner. When the barrier micro instruction is assigned to the first execution queue part, the first execution queue part and the memory access control part do not perform speculative execution of a memory access instruction after a barrier micro instruction in a cooperative manner by overtaking a prescribed execution instruction corresponding to a barrier attribute before the barrier micro instruction.SELECTED DRAWING: Figure 4
【課題】プロセッサの脆弱性の原因となる投機的な実行を柔軟に抑制する演算処理装置を提供する。【解決手段】方法は、バリア設定条件が設定されるバリア設定条件レジスタと、フェッチ命令がバリア設定条件レジスタに設定されているバリア設定条件に該当するか判定し、該当する場合、フェッチ命令の後にバリアマイクロ命令を追加し、実行命令及びバリアマイクロ命令を、それぞれの命令に対応する実行キュー部に割振るバリア設定・命令デコーダと、実行命令の一種であるメモリアクセス命令とバリアマイクロ命令をアウトオブオーダーで発行・実行する第1の実行キュー部・メモリアクセス制御部とを有する。第1の実行キュー部にバリアマイクロ命令が割振られた場合、第1の実行キュー部とメモリアクセス制御部は共同し、バリアマイクロ命令より後のメモリアクセス命令はバリアマイクロ命令より前のバリア属性に対応する所定の実行命令を追い抜いて投機実行しない。【選択図】図4 |
---|---|
Bibliography: | Application Number: JP20180093840 |