JP2020536308A - 単一のcamポートを使用する分割された順序変更キューを備える読み込み/格納ユニット - Google Patents
単一のcamポートを使用する分割された順序変更キューを備える読み込み/格納ユニット Download PDFInfo
- Publication number
- JP2020536308A JP2020536308A JP2020517847A JP2020517847A JP2020536308A JP 2020536308 A JP2020536308 A JP 2020536308A JP 2020517847 A JP2020517847 A JP 2020517847A JP 2020517847 A JP2020517847 A JP 2020517847A JP 2020536308 A JP2020536308 A JP 2020536308A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- read
- storage
- entry
- lsu
- 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.)
- Granted
Links
- 238000005192 partition Methods 0.000 claims abstract description 75
- 238000012545 processing Methods 0.000 claims abstract description 65
- 238000003860 storage Methods 0.000 claims description 136
- 238000000034 method Methods 0.000 claims description 68
- 230000004044 response Effects 0.000 claims description 31
- 230000008859 change Effects 0.000 claims description 28
- 230000008569 process Effects 0.000 claims description 22
- 238000004590 computer program Methods 0.000 claims description 19
- 238000010586 diagram Methods 0.000 abstract description 18
- 230000015654 memory Effects 0.000 description 67
- 238000013519 translation Methods 0.000 description 21
- 230000014616 translation Effects 0.000 description 21
- 238000006243 chemical reaction Methods 0.000 description 20
- 238000001514 detection method Methods 0.000 description 15
- 101150068276 ERT1 gene Proteins 0.000 description 14
- 102100024193 Mitogen-activated protein kinase 1 Human genes 0.000 description 14
- 108700015928 Mitogen-activated protein kinase 13 Proteins 0.000 description 14
- 230000006870 function Effects 0.000 description 13
- 230000009471 action Effects 0.000 description 10
- 230000007246 mechanism Effects 0.000 description 8
- 239000013598 vector Substances 0.000 description 8
- KHESEVVLJIFTFE-UHFFFAOYSA-N CN(C1=CC=C2C=C(C(=NC2=C1)N)C1=CN(C2=CC=CC=C12)C)C Chemical compound CN(C1=CC=C2C=C(C(=NC2=C1)N)C1=CN(C2=CC=CC=C12)C)C KHESEVVLJIFTFE-UHFFFAOYSA-N 0.000 description 7
- 101100427545 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) ULP2 gene Proteins 0.000 description 7
- 239000000872 buffer Substances 0.000 description 7
- 230000009466 transformation Effects 0.000 description 7
- 238000013507 mapping Methods 0.000 description 6
- 230000003287 optical effect Effects 0.000 description 6
- 230000008901 benefit Effects 0.000 description 5
- 238000004891 communication Methods 0.000 description 5
- 238000011010 flushing procedure Methods 0.000 description 5
- 101100310497 Arabidopsis thaliana SMT2 gene Proteins 0.000 description 4
- 238000007667 floating Methods 0.000 description 4
- 239000000203 mixture Substances 0.000 description 4
- 230000009467 reduction Effects 0.000 description 4
- 230000002829 reductive effect Effects 0.000 description 4
- 239000004065 semiconductor Substances 0.000 description 4
- 108090000248 Deleted entry Proteins 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 3
- 238000012217 deletion Methods 0.000 description 3
- 230000037430 deletion Effects 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 230000006872 improvement Effects 0.000 description 3
- 101100161473 Arabidopsis thaliana ABCB25 gene Proteins 0.000 description 2
- 101100096893 Mus musculus Sult2a1 gene Proteins 0.000 description 2
- 101150081243 STA1 gene Proteins 0.000 description 2
- 238000003491 array Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000008030 elimination Effects 0.000 description 2
- 238000003379 elimination reaction Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 230000036961 partial effect Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000001902 propagating effect Effects 0.000 description 2
- 238000000844 transformation Methods 0.000 description 2
- 206010010219 Compulsions Diseases 0.000 description 1
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 230000004888 barrier function Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 229910052802 copper Inorganic materials 0.000 description 1
- 239000010949 copper Substances 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000013523 data management Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001629 suppression Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
- 230000003936 working memory Effects 0.000 description 1
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/30181—Instruction operation extension or modification
- G06F9/30189—Instruction operation extension or modification according to execution mode, e.g. mode flag
-
- 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
-
- 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/383—Operand prefetching
- G06F9/3832—Value prediction for operands; operand history buffers
-
- 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
-
- 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
- G06F9/3838—Dependency mechanisms, e.g. register scoreboarding
-
- 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
- G06F9/3851—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution from multiple instruction streams, e.g. multistreaming
-
- 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/3854—Instruction completion, e.g. retiring, committing or graduating
- G06F9/3856—Reordering of instructions, e.g. using queues or age tags
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/10—Address translation
- G06F12/1027—Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]
- G06F12/1045—Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB] associated with a data cache
- G06F12/1063—Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB] associated with a data cache the data cache being concurrently virtually addressed
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1008—Correctness of operation, e.g. memory ordering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/65—Details of virtual memory and virtual address translation
- G06F2212/652—Page size control
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/65—Details of virtual memory and virtual address translation
- G06F2212/655—Same page detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/65—Details of virtual memory and virtual address translation
- G06F2212/657—Virtual address space management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/68—Details of translation look-aside buffer [TLB]
- G06F2212/681—Multi-level TLB, e.g. microTLB and main TLB
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Advance Control (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Executing Machine-Instructions (AREA)
Abstract
Description
Tid = w、EA (0:51) = x => RA(8:51) = z
Tid = w、EA (0:51) = y => RA(8:51) = z
このようにして、異なるEAが同じRAに対応する。本明細書に記載された技術的解決策は、EAのシノニムを拒否すること、および対応する一次EAを使用して再開することを容易にする。
eatag(0:9)=row(0:4)||offset(0:4)
row(0):EADの最上位のエントリから最下位のエントリへの移動時に循環が発生したかどうかを示すEADの循環ビット。
row(1:4):命令のEA(0:56)を決定するために使用される14エントリのEADへのインデックス。
offset(0:4):命令のEAのビット57:61。
Claims (20)
- 1つまたは複数の命令を実行するための処理ユニットであって、前記処理ユニットは、
読み込み/格納ユニット(LSU)を備えており、前記LSUは、複数のLSUパイプを使用してアウトオブオーダー(OoO)ウィンドウ内の複数の命令を実行するように構成されており、前記命令は、
前記OoOウィンドウから命令を選択することであって、前記命令が実効アドレスを使用する、前記選択することと、
前記命令が読み込み命令であることに応答して、
前記処理ユニットがシングルスレッド・モードで動作することに応答して、前記命令が第1の読み込みパイプ上で発行されているということに基づいて読み込み順序変更キューの第1のパーティションにエントリを作成することと、前記命令が第2の読み込みパイプ上で発行されているということに基づいて、前記読み込み順序変更キューの第2のパーティションに前記エントリを作成することと、
複数のスレッドが同時に処理されるマルチスレッド・モードで前記処理ユニットが動作することに応答して、前記命令が前記第1の読み込みパイプ上で発行されているということに基づいて、前記処理ユニットの第1のスレッドによって、前記読み込み順序変更キューの前記第1のパーティションの第1の所定の部分に前記エントリを作成することと
によって実行される、処理ユニット。 - 前記マルチスレッド・モードにおいて、前記読み込み順序変更キューの前記第1のパーティションの前記第1の所定の部分が、前記第1の読み込みパイプを使用して前記処理ユニットの前記第1のスレッドによって発行された読み込み命令に固有である、請求項1に記載の処理ユニット。
- 前記読み込み/格納ユニットが、
前記命令が格納命令であることに応答して、
前記処理ユニットが前記シングルスレッド・モードで動作することに応答して、前記格納命令が第1の格納パイプ上で発行されているということに基づいて格納順序変更キューの第1のパーティションに格納エントリを作成することと、前記格納命令が第2の格納パイプ上で発行されているということに基づいて、前記格納順序変更キューの第2のパーティションに前記格納エントリを作成することと、
前記マルチスレッド・モードで前記処理ユニットが動作することに応答して、前記格納命令が前記第1の格納パイプ上で発行されているということに基づいて、前記処理ユニットの前記第1のスレッドによって、前記格納順序変更キューの前記第1のパーティションの第1の所定の部分に前記格納エントリを作成することと
を実行するようにさらに構成されている、請求項1に記載の処理ユニット。 - 前記読み込み順序変更キューが、前記LSUの読み込みパイプごとに1つのパーティションを含んでいる、請求項1に記載の処理ユニット。
- 前記LSUが複数の読み込み命令を同時に動作させ、1つの読み込み命令が各読み込みパイプを使用する、請求項4に記載の処理ユニット。
- 前記格納順序変更キューが、前記LSUの格納パイプごとに1つのパーティションを含んでいる、請求項1に記載の処理ユニット。
- 前記LSUが複数の格納命令を同時に動作させ、1つの格納命令が各読み込みパイプを使用する、請求項6に記載の処理ユニット。
- 処理ユニットによる1つまたは複数の命令のアウトオブオーダー実行のためのコンピュータ実装方法であって、前記方法は、
前記処理ユニットの読み込み/格納ユニット(LSU)によって、順序に従わずに実行される複数の命令を含んでいる命令のアウトオブオーダー(OoO)ウィンドウを受信することと、
前記LSUによって、前記OoOウィンドウから命令を発行することと
を含んでおり、前記命令は、
前記OoOウィンドウから命令を選択することであって、前記命令が実効アドレスを使用する、前記選択することと、
前記命令が読み込み命令であることに応答して、
前記処理ユニットがシングルスレッド・モードで動作することに応答して、前記命令が第1の読み込みパイプ上で発行されているということに基づいて読み込み順序変更キューの第1のパーティションにエントリを作成することと、前記命令が第2の読み込みパイプ上で発行されているということに基づいて、前記読み込み順序変更キューの第2のパーティションに前記エントリを作成することと、
マルチスレッド・モードで前記処理ユニットが動作することに応答して、前記命令が前記第1の読み込みパイプ上で発行されているということに基づいて、前記処理ユニットの第1のスレッドによって、前記読み込み順序変更キューの前記第1のパーティションの第1の所定の部分に前記エントリを作成することと
によって発行される、コンピュータ実装方法。 - 前記マルチスレッド・モードにおいて、前記読み込み順序変更キューの前記第1のパーティションの前記第1の所定の部分が、前記第1の読み込みパイプを使用して前記処理ユニットの前記第1のスレッドによって発行された読み込み命令に固有である、請求項8に記載のコンピュータ実装方法。
- 前記命令が格納命令であることに応答して、
前記処理ユニットが前記シングルスレッド・モードで動作することに応答して、前記格納命令が第1の格納パイプ上で発行されているということに基づいて格納順序変更キューの第1のパーティションに格納エントリを作成することと、前記格納命令が第2の格納パイプ上で発行されているということに基づいて、前記格納順序変更キューの第2のパーティションに前記格納エントリを作成することと、
前記マルチスレッド・モードで前記処理ユニットが動作することに応答して、前記格納命令が前記第1の格納パイプ上で発行されているということに基づいて、前記処理ユニットの前記第1のスレッドによって、前記格納順序変更キューの前記第1のパーティションの第1の所定の部分に前記格納エントリを作成することと
をさらに含んでいる、請求項8に記載のコンピュータ実装方法。 - 前記読み込み順序変更キューが、前記LSUの読み込みパイプごとに1つのパーティションを含んでいる、請求項8に記載のコンピュータ実装方法。
- 前記LSUが複数の読み込み命令を同時に動作させ、1つの読み込み命令が各読み込みパイプを使用する、請求項11に記載のコンピュータ実装方法。
- 前記格納順序変更キューが、前記LSUの格納パイプごとに1つのパーティションを含んでいる、請求項8に記載のコンピュータ実装方法。
- 前記LSUが複数の格納命令を同時に動作させ、1つの格納命令が各読み込みパイプを使用する、請求項13に記載のコンピュータ実装方法。
- プログラム命令が具現化されているコンピュータ可読記憶媒体を備えているコンピュータ・プログラム製品であって、前記プログラム命令は、処理ユニットに、
前記処理ユニットの読み込み/格納ユニット(LSU)によって、順序に従わずに実行される複数の命令を含んでいる命令のアウトオブオーダー(OoO)ウィンドウを受信することと、
前記LSUによって、前記OoOウィンドウから命令を発行することと
を含む動作を実行させるように前記処理ユニットによって実行可能であり、前記命令は、
前記OoOウィンドウから命令を選択することであって、前記命令が実効アドレスを使用する、前記選択することと、
前記命令が読み込み命令であることに応答して、
前記処理ユニットがシングルスレッド・モードで動作することに応答して、前記命令が第1の読み込みパイプ上で発行されているということに基づいて読み込み順序変更キューの第1のパーティションにエントリを作成することと、前記命令が第2の読み込みパイプ上で発行されているということに基づいて、前記読み込み順序変更キューの第2のパーティションに前記エントリを作成することと、
マルチスレッド・モードで前記処理ユニットが動作することに応答して、前記命令が前記第1の読み込みパイプ上で発行されているということに基づいて、前記処理ユニットの第1のスレッドによって、前記読み込み順序変更キューの前記第1のパーティションの第1の所定の部分に前記エントリを作成することと
によって発行される、コンピュータ・プログラム製品。 - 前記マルチスレッド・モードにおいて、前記読み込み順序変更キューの前記第1のパーティションの前記第1の所定の部分が、前記第1の読み込みパイプを使用して前記処理ユニットの前記第1のスレッドによって発行された読み込み命令に固有である、請求項15に記載のコンピュータ・プログラム製品。
- 前記命令が格納命令であることに応答して、
前記処理ユニットが前記シングルスレッド・モードで動作することに応答して、前記格納命令が第1の格納パイプ上で発行されているということに基づいて格納順序変更キューの第1のパーティションに格納エントリを作成することと、前記格納命令が第2の格納パイプ上で発行されているということに基づいて、前記格納順序変更キューの第2のパーティションに前記格納エントリを作成することと、
前記マルチスレッド・モードで前記処理ユニットが動作することに応答して、前記格納命令が前記第1の格納パイプ上で発行されているということに基づいて、前記処理ユニットの前記第1のスレッドによって、前記格納順序変更キューの前記第1のパーティションの第1の所定の部分に前記格納エントリを作成することと
を含んでいる、請求項15に記載のコンピュータ・プログラム製品。 - 前記読み込み順序変更キューが、前記LSUの読み込みパイプごとに1つのパーティションを含んでいる、請求項15に記載のコンピュータ・プログラム製品。
- 前記LSUが複数の読み込み命令を同時に動作させ、1つの読み込み命令が各読み込みパイプを使用する、請求項18に記載のコンピュータ・プログラム製品。
- 前記格納順序変更キューが、前記LSUの格納パイプごとに1つのパーティションを含んでおり、前記LSUが複数の格納命令を同時に動作させ、1つの格納命令が各読み込みパイプを使用する、請求項15に記載のコンピュータ・プログラム製品。
Applications Claiming Priority (9)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/726,627 US11175924B2 (en) | 2017-10-06 | 2017-10-06 | Load-store unit with partitioned reorder queues with single cam port |
US15/726,596 US10606591B2 (en) | 2017-10-06 | 2017-10-06 | Handling effective address synonyms in a load-store unit that operates without address translation |
US15/726,596 | 2017-10-06 | ||
US15/726,627 | 2017-10-06 | ||
US15/825,494 US10606592B2 (en) | 2017-10-06 | 2017-11-29 | Handling effective address synonyms in a load-store unit that operates without address translation |
US15/825,453 | 2017-11-29 | ||
US15/825,453 US11175925B2 (en) | 2017-10-06 | 2017-11-29 | Load-store unit with partitioned reorder queues with single cam port |
US15/825,494 | 2017-11-29 | ||
PCT/IB2018/057695 WO2019069256A1 (en) | 2017-10-06 | 2018-10-03 | LOADING-STORAGE UNIT WITH PARTITIONED RELEASING WAIT FILES WITH A SINGLE CAM PORT |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2020536308A true JP2020536308A (ja) | 2020-12-10 |
JP7064273B2 JP7064273B2 (ja) | 2022-05-10 |
Family
ID=65994519
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020517947A Active JP7025100B2 (ja) | 2017-10-06 | 2018-10-03 | アドレス変換なしで動作する読み込み/格納ユニットでの実効アドレスのシノニムの処理 |
JP2020517847A Active JP7064273B2 (ja) | 2017-10-06 | 2018-10-03 | 単一のcamポートを使用する分割された順序変更キューを備える読み込み/格納ユニット |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020517947A Active JP7025100B2 (ja) | 2017-10-06 | 2018-10-03 | アドレス変換なしで動作する読み込み/格納ユニットでの実効アドレスのシノニムの処理 |
Country Status (5)
Country | Link |
---|---|
JP (2) | JP7025100B2 (ja) |
CN (2) | CN111133413B (ja) |
DE (2) | DE112018004004T5 (ja) |
GB (2) | GB2579534B (ja) |
WO (2) | WO2019069256A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11829293B2 (en) | 2021-10-07 | 2023-11-28 | Fujitsu Limited | Processor and arithmetic processing method |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114780146B (zh) * | 2022-06-17 | 2022-08-26 | 深流微智能科技(深圳)有限公司 | 资源地址查询方法、装置、系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001356903A (ja) * | 2000-05-04 | 2001-12-26 | Internatl Business Mach Corp <Ibm> | マルチスレッド・プロセッサ内でのパイプライン・ステージのフラッシュ方法および装置 |
US6931639B1 (en) * | 2000-08-24 | 2005-08-16 | International Business Machines Corporation | Method for implementing a variable-partitioned queue for simultaneous multithreaded processors |
US20130212585A1 (en) * | 2012-02-10 | 2013-08-15 | Thang M. Tran | Data processing system operable in single and multi-thread modes and having multiple caches and method of operation |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7343469B1 (en) * | 2000-09-21 | 2008-03-11 | Intel Corporation | Remapping I/O device addresses into high memory using GART |
US20040117587A1 (en) * | 2002-12-12 | 2004-06-17 | International Business Machines Corp. | Hardware managed virtual-to-physical address translation mechanism |
US7730282B2 (en) * | 2004-08-11 | 2010-06-01 | International Business Machines Corporation | Method and apparatus for avoiding data dependency hazards in a microprocessor pipeline architecture using a multi-bit age vector |
US8145887B2 (en) * | 2007-06-15 | 2012-03-27 | International Business Machines Corporation | Enhanced load lookahead prefetch in single threaded mode for a simultaneous multithreaded microprocessor |
US8645974B2 (en) * | 2007-08-02 | 2014-02-04 | International Business Machines Corporation | Multiple partition adjunct instances interfacing multiple logical partitions to a self-virtualizing input/output device |
US7711929B2 (en) * | 2007-08-30 | 2010-05-04 | International Business Machines Corporation | Method and system for tracking instruction dependency in an out-of-order processor |
US8639884B2 (en) * | 2011-02-28 | 2014-01-28 | Freescale Semiconductor, Inc. | Systems and methods for configuring load/store execution units |
US9182991B2 (en) * | 2012-02-06 | 2015-11-10 | International Business Machines Corporation | Multi-threaded processor instruction balancing through instruction uncertainty |
GB2503438A (en) * | 2012-06-26 | 2014-01-01 | Ibm | Method and system for pipelining out of order instructions by combining short latency instructions to match long latency instructions |
CN103198028B (zh) * | 2013-03-18 | 2015-12-23 | 华为技术有限公司 | 一种内存数据迁移方法、装置及系统 |
US9740409B2 (en) * | 2013-12-13 | 2017-08-22 | Ineda Systems, Inc. | Virtualized storage systems |
US10209995B2 (en) * | 2014-10-24 | 2019-02-19 | International Business Machines Corporation | Processor core including pre-issue load-hit-store (LHS) hazard prediction to reduce rejection of load instructions |
US10089240B2 (en) * | 2014-12-26 | 2018-10-02 | Wisconsin Alumni Research Foundation | Cache accessed using virtual addresses |
-
2018
- 2018-10-03 GB GB2006338.4A patent/GB2579534B/en active Active
- 2018-10-03 JP JP2020517947A patent/JP7025100B2/ja active Active
- 2018-10-03 CN CN201880061955.4A patent/CN111133413B/zh active Active
- 2018-10-03 CN CN201880061956.9A patent/CN111133421B/zh active Active
- 2018-10-03 WO PCT/IB2018/057695 patent/WO2019069256A1/en active Application Filing
- 2018-10-03 WO PCT/IB2018/057694 patent/WO2019069255A1/en active Application Filing
- 2018-10-03 JP JP2020517847A patent/JP7064273B2/ja active Active
- 2018-10-03 DE DE112018004004.6T patent/DE112018004004T5/de active Pending
- 2018-10-03 GB GB2006344.2A patent/GB2579757B/en active Active
- 2018-10-03 DE DE112018004006.2T patent/DE112018004006B4/de active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001356903A (ja) * | 2000-05-04 | 2001-12-26 | Internatl Business Mach Corp <Ibm> | マルチスレッド・プロセッサ内でのパイプライン・ステージのフラッシュ方法および装置 |
US6931639B1 (en) * | 2000-08-24 | 2005-08-16 | International Business Machines Corporation | Method for implementing a variable-partitioned queue for simultaneous multithreaded processors |
US20130212585A1 (en) * | 2012-02-10 | 2013-08-15 | Thang M. Tran | Data processing system operable in single and multi-thread modes and having multiple caches and method of operation |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11829293B2 (en) | 2021-10-07 | 2023-11-28 | Fujitsu Limited | Processor and arithmetic processing method |
Also Published As
Publication number | Publication date |
---|---|
CN111133421A (zh) | 2020-05-08 |
CN111133421B (zh) | 2023-09-29 |
GB2579757B (en) | 2020-11-18 |
DE112018004004T5 (de) | 2020-04-16 |
DE112018004006T5 (de) | 2020-04-16 |
GB2579757A (en) | 2020-07-01 |
CN111133413B (zh) | 2023-09-29 |
DE112018004006B4 (de) | 2021-03-25 |
JP7064273B2 (ja) | 2022-05-10 |
CN111133413A (zh) | 2020-05-08 |
WO2019069256A1 (en) | 2019-04-11 |
GB202006344D0 (en) | 2020-06-17 |
GB202006338D0 (en) | 2020-06-17 |
JP2020536310A (ja) | 2020-12-10 |
JP7025100B2 (ja) | 2022-02-24 |
WO2019069255A1 (en) | 2019-04-11 |
GB2579534A (en) | 2020-06-24 |
GB2579534B (en) | 2020-12-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10776113B2 (en) | Executing load-store operations without address translation hardware per load-store unit port | |
US10963248B2 (en) | Handling effective address synonyms in a load-store unit that operates without address translation | |
US10534616B2 (en) | Load-hit-load detection in an out-of-order processor | |
US10977047B2 (en) | Hazard detection of out-of-order execution of load and store instructions in processors without using real addresses | |
US11175925B2 (en) | Load-store unit with partitioned reorder queues with single cam port | |
US10324856B2 (en) | Address translation for sending real address to memory subsystem in effective address based load-store unit | |
US10606593B2 (en) | Effective address based load store unit in out of order processors | |
US10572257B2 (en) | Handling effective address synonyms in a load-store unit that operates without address translation | |
US10579387B2 (en) | Efficient store-forwarding with partitioned FIFO store-reorder queue in out-of-order processor | |
US9740623B2 (en) | Object liveness tracking for use in processing device cache | |
JP7064273B2 (ja) | 単一のcamポートを使用する分割された順序変更キューを備える読み込み/格納ユニット | |
US10579384B2 (en) | Effective address based instruction fetch unit for out of order processors |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20200330 |
|
RD12 | Notification of acceptance of power of sub attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7432 Effective date: 20200327 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20210323 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20220126 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20220201 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220324 |
|
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: 20220411 |
|
RD14 | Notification of resignation of power of sub attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7434 Effective date: 20220414 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20220420 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7064273 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |