CN102662634B - 非阻塞发射和执行的存储器访问执行装置 - Google Patents

非阻塞发射和执行的存储器访问执行装置 Download PDF

Info

Publication number
CN102662634B
CN102662634B CN201210076233.0A CN201210076233A CN102662634B CN 102662634 B CN102662634 B CN 102662634B CN 201210076233 A CN201210076233 A CN 201210076233A CN 102662634 B CN102662634 B CN 102662634B
Authority
CN
China
Prior art keywords
instruction
written
queue
cache
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
Application number
CN201210076233.0A
Other languages
English (en)
Other versions
CN102662634A (zh
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.)
Hangzhou C Sky Microsystems Co Ltd
Original Assignee
Hangzhou C Sky Microsystems Co 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 Hangzhou C Sky Microsystems Co Ltd filed Critical Hangzhou C Sky Microsystems Co Ltd
Priority to CN201210076233.0A priority Critical patent/CN102662634B/zh
Publication of CN102662634A publication Critical patent/CN102662634A/zh
Application granted granted Critical
Publication of CN102662634B publication Critical patent/CN102662634B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

一种非阻塞发射和执行的存储器访问执行装置,包括高速缓存器;载入/存储指令发射队列,用以缓存取指单元取到的载入/存储指令,并将得到源操作数的载入/存储指令发射,计算访问地址并进行后续的高速缓存访问;载入/存储指令缓冲队列,用以在高速缓存器数据通路出现访问冲突时缓存载入/存储指令发射队列发射的指令;载入/存储指令重排序队列,用以记录载入/存储指令的高速缓存命中状态、指令实际顺序信息,检查乱序执行的正确性,将高速缓存命中的载入指令得到的数据直通到前级流水线,派发高速缓存缺失的载入指令和所有存储指令的到相应的高速缓存回填队列、高速缓存更新队列和高速缓存回写队列。本发明结构简单、有效降低硬件开销。

Description

非阻塞发射和执行的存储器访问执行装置
技术领域
本发明涉及嵌入式处理器,尤其是一种存储器访问执行装置。
背景技术
目前,包括嵌入式处理器在内的所有微处理器都使用流水线技术提高指令执行的并行性以提高处理效率。程序中存在大量的载入/存储指令,其访问造成高速缓存缺失、回填和数据更新操作会占用高速缓存访问通路,阻塞后续载入/存储指令对高速缓存的访问,严重影响载入/存储指令的执行效率,进而影响整个处理器的性能。
由于载入/存储指令造成的延时在很大程度上影响了处理器的性能,为提高高速缓存的访问效率,目前的常见解决方法是为采用非阻塞的高速缓存技术来加速载入/存储指令的处理。这种方法一般需要较大的硬件开销和复杂的高速缓存访问协议,同时高速缓存容量越大,这样的开销就越大。
发明内容
为了克服已有嵌入式处理器的存储器访问技术复杂度较高、硬件开销大的不足,本发明提供一种结构简单、有效降低硬件开销的非阻塞发射和执行的存储器访问执行装置。
本发明解决其技术问题所采用的技术方案是:
一种非阻塞发射和执行的存储器访问执行装置,包括高速缓存器,存储指令指对高速缓存进行写的指令,载入指令表示对高速缓存进行读的指令;所述存储器访问执行装置还包括:
载入/存储指令发射队列,用以缓存取指单元取到的载入/存储指令,并将得到源操作数的载入/存储指令发射,计算访问地址并进行后续的高速缓存访问;
载入/存储指令缓冲队列,用以在高速缓存器数据通路出现访问冲突时缓存载入/存储指令发射队列发射并完成地址计算的载入/存储指令;
载入/存储指令重排序队列,用以记录载入/存储指令的地址、访问类型、高速缓存命中状态和指令实际顺序信息,检查乱序执行的正确性;将高速缓存命中的载入指令得到的数据直通到前级流水线,派发高速缓存缺失的载入指令到高速缓存回填队列中,派发所有存储指令的到高速缓存更新队列中;
高速缓存回填队列,用以缓存高速缓存缺失的载入指令,向下级存储器发起的请求,获得缺失的高速缓存行并回填高速缓存;
高速缓存更新队列,用以缓存高速缓存命中的存储指令并按序更新高速缓存;
高速缓存回写队列,用以缓存高速缓存缺失的存储指令和被替换的脏缓存行的数据,并按序更新下级存储器。
进一步,所述载入/存储指令发射队列中,按照指令实际顺序缓存载入/存储指令,载入/存储指令在载入/存储指令发射队列中等待其源操作数准备完毕,载入/存储指令发射队列会监视队列中载入/存储指令的操作数是否已准备好,同时将操作数准备好的最老的载入/存储指令乱序发射到后级流水线。
再进一步,高速缓存器通路会被多种访问请求占用,按优先级从高到低依次为:1)高速缓存回填队列回填高速缓存的请求,2)载入/存储指令缓冲队列指令访问高速缓存的请求,3)高速缓存更新队列中存储指令更新高速缓存的请求,4)高速缓存回填队列读取脏缓存行的请求。
更进一步,所述载入/存储指令缓冲队列记录载入指令或存储指令的类型、访存宽度、符号扩展、数据所在的高速缓存器区块位置以及该指令在载入指令/存储指令重排序队列中的记录引索,载入/存储指令缓冲队列入口同时包括一个用于载入/存储指令访问地址的计算的地址加法器。
所述载入/存储指令重排序队列记录载入/存储指令的地址、访问类型、高速缓存命中状态和指令实际顺序信息,检查乱序执行的正确性;在载入/存储指令进入载入/存储指令发射队列的同时需要在载入/存储指令重排序队列中创建相应的载入/存储指令表项,并记录载入/存储指令的实际顺序。
高速缓存回填队列判断被替换缓存行是否为脏,将脏缓存行填入高速缓存回写队列以更新下一级存储器,之后按照实际指令顺序向下级存储器发起请求,获得缺失的高速缓存行并回填高速缓存。
所述载入/存储指令缓冲队列中,当高速缓存器通路没有被其他访问请求占用时,若载入/存储指令缓冲队列为空,载入/存储指令发射队列发射并完成地址计算的指令将不进入载入/存储指令缓冲队列,直接访问高速缓存器;若载入/存储指令缓冲队列中有被缓冲指令,载入/存储指令发射队列发射并完成地址计算的指令将进入载入/存储指令缓冲队列中排队。
当高速缓存器通路被其他访问请求占用时,完成地址计算的指令将进入载入/存储指令缓冲队列中排队。
检查乱序执行的正确性的过程为:若一条载入指令在另一条存储指令被发射到存储访问单元之前就结束了对高速缓存器的访问,而该存储指令的实际顺序在载入指令之前并且两者地址相同,则载入指令的提前执行投机失败,重新执行实际指令顺序中存储指令以后的所有指令;
正在访问高速缓存器的载入指令,若其地址与高速缓存更新队列中高速缓存命中的存储指令相同,则该载入指令在该存储指令更新高速缓存器时旁路获得其数据;
若载入/存储指令重排序队列中指令的地址与高速缓存回填队列中回填缓存行的地址相同,则将该载入/存储指令的高速缓存命中状态改为高速缓存命中;若载入/存储指令重排序队列中指令的地址与高速缓存回填队列中被替换缓存行的地址相同,则将该载入/存储指令的高速缓存命中状态改为高速缓存缺失;
若载入/存储指令重排序队列中的载入指令地址与高速缓存回填队列中回填缓存行地址相同,则该载入指令旁路获得高速缓存回填队列中的回填数据;若载入/存储指令重排序队列中的载入指令地址与高速缓存更新队列中高速缓存命中的存储指令地址相同,则该载入指令旁路获得高速缓存更新队列中高速缓存命中的存储指令的数据。
本发明的技术构思为:利用载入/存储指令重排序队列记录载入/存储指令发射队列发射的指令,利用高速缓存回填队列缓存高速缓存缺失的载入指令,利用高速缓存更新队列缓存高速缓存命中的存储指令,消除对高速缓存器通路的阻塞,加速高速缓存命中的载入指令的数据获得,从而加速载入/存储指令发射队列及其他指令发射队列中指令的操作数获得,提高不同执行单元的并行性。
本发明的有益效果主要表现在:结构简单,在进行高效的载入/存储指令非阻塞发射和执行的同时开销较小。
附图说明
图1是非阻塞发射和执行的存储器访问执行装置的结构图。
具体实施方式
下面结合附图对本发明作进一步描述。
参照附图1,一种非阻塞发射和执行的存储器访问执行装置,所述存储器访问执行装置包括高速缓存器,包括标志位阵列存储器、数据阵列存储器、脏数据位阵列存储器;
存储指令指对高速缓存进行写的指令,载入指令表示对高速缓存进行读的指令;
所述存储器访问执行装置还包括:
载入/存储指令发射队列,如图1。取指单元取到指令后进行解码,若该指令为载入/存储指令,则按序将其发射到载入/存储指令发射队列。载入/存储指令在载入/存储指令发射队列中等待其源操作数准备完毕。
对于载入指令来说,源操作数包括基址寄存器、地址偏移量立即数/地址偏移量寄存器;对于存储指令来说,源操作数包括基址寄存器、地址偏移量立即数/地址偏移量寄存器、数据寄存器。但为了加速存储指令的发射,存储指令的数据操作数即使没有准备好也会发射。载入/存储指令发射队列会监视队列中载入/存储指令的操作数是否已准备好,同时将操作数准备好的最老的载入/存储指令乱序发射到后级流水线。
高速缓存器通路会被载入/存储指令缓冲队列指令访问高速缓存的请求、高速缓存回填队列读取脏缓存行的请求、高速缓存回填队列回填高速缓存的请求、高速缓存更新队列中存储指令更新高速缓存的请求占用。请求的优先级从高到低为:1)高速缓存回填队列回填高速缓存的请求,2)载入/存储指令缓冲队列指令访问高速缓存的请求,3)高速缓存更新队列中存储指令更新高速缓存的请求,4)高速缓存回填队列读取脏缓存行的请求。
载入/存储指令缓冲队列,如图1,用于记录和缓冲高速缓存器访问指令的访问类型、访存宽度、符号扩展、数据所在的高速缓存器区块位置、该指令在载入/存储指令重排序队列中的记录引索等信息。
载入/存储指令缓冲队列入口同时包括一个地址加法器用于载入/存储指令访问地址的计算,其中一个操作数根据访问宽度进行不同位数的位移。载入/存储指令由载入/存储指令发射队列发射时,由加法器计算访问地址。当访问宽度为半字、字或双字时,其中一个操作数分别位移一位、两位或三位。
当高速缓存器通路没有被其他访问请求占用,若载入/存储指令缓冲队列中无指令,则计算完地址的指令将旁路载入/存储指令缓冲队列并立即得到高速缓存器的访问通路;若载入/存储指令缓冲队列中存在指令,完成地址计算的指令将进入载入/存储指令缓冲队列中排队,同时在载入/存储指令缓冲队列中记录该指令的访问类型、访存宽度、符号扩展、数据所在的高速缓存器区块位置、该指令在载入/存储指令重排序队列中的记录引索等信息,载入/存储指令缓冲队列中等待的指令将按序出队访问高速缓存器。当高速缓存器通路被其他访问请求占用时,完成地址计算的指令将进入载入/存储指令缓冲队列中排队。
载入/存储指令重排序队列,如图1,用以记录载入/存储指令的地址、访问类型、高速缓存命中状态。由于载入/存储指令会被载入/存储指令发射队列乱序地发射,因此在载入/存储指令进入载入/存储指令发射队列的同时需要在载入/存储指令重排序队列中创建相应的载入/存储指令表项,并记录载入/存储指令的实际顺序。
载入/存储指令重排序队列中记录了指令的实际顺序。由于载入/存储指令的乱序发射,指令访问高速缓存器的顺序可能会与指令实际顺序不同,指令执行的同时需要检查和纠正乱序发射执行可能引入的错误。如果一条载入指令在另一条存储指令被发射到存储访问单元之前就结束了对高速缓存器的访问,而该存储指令的实际顺序在载入指令之前并且两者地址相同,则载入指令的提前执行被认为是一次投机失败,需要重新执行实际指令顺序中存储指令以后的所有指令。
由于没有准备好数据操作数的存储指令也会被载入/存储指令发射队列发射,所以载入/存储指令重排序队列会继续监视其数据操作数的是否准备好并旁路获得该数据。
载入/存储指令重排序队列将高速缓存命中的载入指令得到的数据直通到前级流水线,因此可以尽可能的加速高速缓存命中的载入指令数据的获得,加速与其有数据依赖的其他指令的发射执行。
高速缓存回填队列,如图1,用以缓存高速缓存缺失的载入指令,以便消除其对高速缓存器通路的阻塞。载入/存储指令重排序队列将高速缓存缺失的载入指令按照实际指令顺序发射到高速缓存回填队列中。高速缓存回填队列会判断被替换缓存行是否为脏,将脏缓存行填入高速缓存回写队列以更新下一级存储器,之后按照实际指令顺序向下级存储器发起请求、获得缺失的高速缓存行并回填高速缓存。
高速缓存更新队列,如图1,用以缓存高速缓存命中的存储指令,以便消除其对高速缓存器通路的阻塞。载入/存储指令重排序队列将高速缓存命中的存储指令按照实际指令顺序发射到高速缓存更新队列中。高速缓存更新队列中的指令将按序更新高速缓存。
高速缓存回写队列,如图1,用以缓存高速缓存缺失的存储指令和被替换的脏缓存行的数据,以便消除对高速缓存器通路的阻塞。载入/存储指令重排序队列将高速缓存缺失的存储指令和被替换的脏缓存行的数据按照实际指令顺序发射到高速缓存回写队列中。高速缓存回写队列将按序更新下级存储器。
由于指令的乱序执行,正在访问高速缓存器的载入指令,若其地址与高速缓存更新队列中高速缓存命中的存储指令相同,则需要该载入指令在该存储指令更新高速缓存器的同时旁路获得其数据以保证载入指令获得的数据的正确性。
同样的,访问高速缓存器后进入载入/存储指令重排序队列的载入/存储指令的命中信息可能不准确,需要监视高速缓存回填队列予以纠正。若载入/存储指令重排序队列中指令的地址与高速缓存回填队列中回填缓存行的地址相同,则需要将该载入/存储指令的高速缓存命中状态改为高速缓存命中;若载入/存储指令重排序队列中指令的地址与高速缓存回填队列中被替换缓存行的地址相同,则需要将该载入/存储指令的高速缓存命中状态改为高速缓存缺失。
同时,载入/存储指令重排序队列中的载入指令地址若与高速缓存回填队列中回填缓存行地址相同,则该载入指令需要旁路获得高速缓存回填队列中的回填数据以保证正确性;载入/存储指令重排序队列中的载入指令地址若与高速缓存更新队列中高速缓存命中的存储指令地址相同,则该载入指令需要旁路获得高速缓存更新队列中高速缓存命中的存储指令的数据以保证正确性。

Claims (6)

1.一种非阻塞发射和执行的存储访问执行装置,包括高速缓存器,存储指令指对高速缓存进行写的指令,载入指令表示对高速缓存进行读的指令;其特征在于:所述存储访问执行装置还包括:
载入/存储指令发射队列,用以缓存取指单元取到的载入/存储指令,并将得到源操作数的载入/存储指令发射,计算访问地址并进行后续的高速缓存访问;
载入/存储指令缓冲队列,用以在高速缓存器数据通路出现访问冲突时缓存载入/存储指令发射队列发射并完成地址计算的载入/存储指令;
载入/存储指令重排序队列,用以记录载入/存储指令的地址、访问类型、高速缓存命中状态和指令实际顺序信息,检查乱序执行的正确性;将高速缓存命中的载入指令得到的数据直通到前级流水线,派发高速缓存缺失的载入指令到高速缓存回填队列中,派发所有存储指令的到高速缓存更新队列中;
高速缓存回填队列,用以缓存高速缓存缺失的载入指令,向下级存储器发起的请求,获得缺失的高速缓存行并回填高速缓存;
高速缓存更新队列,用以缓存高速缓存命中的存储指令并按序更新高速缓存;
高速缓存回写队列,用以缓存高速缓存缺失的存储指令和被替换的脏缓存行的数据,并按序更新下级存储器;
所述载入/存储指令重排序队列记录载入/存储指令的地址、访问类型、高速缓存命中状态和指令实际顺序信息,检查乱序执行的正确性;在载入/存储指令进入载入/存储指令发射队列的同时需要在载入/存储指令重排序队列中创建相应的载入/存储指令表项,并记录载入/存储指令的实际顺序;
检查乱序执行的正确性的过程为:
若一条载入指令在另一条存储指令被发射到存储访问单元之前就结束了对高速缓存器的访问,而该存储指令的实际顺序在载入指令之前并且两者地址相同,则载入指令的提前执行投机失败,重新执行实际指令顺序中存储指令以后的所有指令;
正在访问高速缓存器的载入指令,若其地址与高速缓存更新队列中高速缓存命中的存储指令相同,则该载入指令在该存储指令更新高速缓存器时旁路获得其数据;
若载入/存储指令重排序队列中指令的地址与高速缓存回填队列中回填缓存行的地址相同,则将该载入/存储指令的高速缓存命中状态改为高速缓存命中;若载入/存储指令重排序队列中指令的地址与高速缓存回填队列中被替换缓存行的地址相同,则将该载入/存储指令的高速缓存命中状态改为高速缓存缺失;
若载入/存储指令重排序队列中的载入指令地址与高速缓存回填队列中回填缓存行地址相同,则该载入指令旁路获得高速缓存回填队列中的回填数据;若载入/存储指令重排序队列中的载入指令地址与高速缓存更新队列中高速缓存命中的存储指令地址相同,则该载入指令旁路获得高速缓存更新队列中高速缓存命中的存储指令的数据。
2.如权利要求1所述的非阻塞发射和执行的存储访问执行装置,其特征在于:所述载入/存储指令发射队列中,按照指令实际顺序缓存载入/存储指令,载入/存储指令在载入/存储指令发射队列中等待其源操作数准备完毕,载入/存储指令发射队列会监视队列中载入/存储指令的操作数是否已准备好,同时将操作数准备好的最老的载入/存储指令乱序发射到后级流水线。
3.如权利要求1或2所述的非阻塞发射和执行的存储访问执行装置,其特征在于:高速缓存器通路会被多种访问请求占用,按优先级从高到低依次为:1)高速缓存回填队列回填高速缓存的请求,2)载入/存储指令缓冲队列指令访问高速缓存的请求,3)高速缓存更新队列中存储指令更新高速缓存的请求,4)高速缓存回填队列读取脏缓存行的请求。
4.如权利要求1或2所述的非阻塞发射和执行的存储访问执行装置,其特征在于:所述载入/存储指令缓冲队列记录载入指令或存储指令的类型、访存宽度、符号扩展、数据所在的高速缓存器区块位置以及该指令在载入指令/存储指令重排序队列中的记录引索,载入/存储指令缓冲队列入口同时包括一个用于载入/存储指令访问地址的计算的地址加法器。
5.如权利要求1所述的非阻塞发射和执行的存储访问执行装置,其特征在于:高速缓存回填队列判断被替换缓存行是否为脏,将脏缓存行填入高速缓存回写队列以更新下一级存储器,之后按照实际指令顺序向下级存储器发起请求,获得缺失的高速缓存行并回填高速缓存。
6.如权利要求1或2所述的非阻塞发射和执行的存储访问执行装置,其特征在于:所述载入/存储指令缓冲队列中,当高速缓存器通路没有被其他访问请求占用时,若载入/存储指令缓冲队列为空,载入/存储指令发射队列发射并完成地址计算的指令将不进入载入/存储指令缓冲队列,直接访问高速缓存器;若载入/存储指令缓冲队列中有被缓冲指令,载入/存储指令发射队列发射并完成地址计算的指令将进入载入/存储指令缓冲队列中排队;
当高速缓存器通路被其他访问请求占用时,完成地址计算的指令将进入载入/存储指令缓冲队列中排队。
CN201210076233.0A 2012-03-21 2012-03-21 非阻塞发射和执行的存储器访问执行装置 Active CN102662634B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210076233.0A CN102662634B (zh) 2012-03-21 2012-03-21 非阻塞发射和执行的存储器访问执行装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210076233.0A CN102662634B (zh) 2012-03-21 2012-03-21 非阻塞发射和执行的存储器访问执行装置

Publications (2)

Publication Number Publication Date
CN102662634A CN102662634A (zh) 2012-09-12
CN102662634B true CN102662634B (zh) 2014-10-29

Family

ID=46772135

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210076233.0A Active CN102662634B (zh) 2012-03-21 2012-03-21 非阻塞发射和执行的存储器访问执行装置

Country Status (1)

Country Link
CN (1) CN102662634B (zh)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9361103B2 (en) * 2012-11-02 2016-06-07 Advanced Micro Devices, Inc. Store replay policy
US10061590B2 (en) * 2015-01-07 2018-08-28 Micron Technology, Inc. Generating and executing a control flow
CN108536644B (zh) * 2015-12-04 2022-04-12 格兰菲智能科技有限公司 由装置端推核心入队列的装置
US10067875B2 (en) * 2016-11-14 2018-09-04 Via Alliance Semiconductor Co., Ltd. Processor with instruction cache that performs zero clock retires
US10198789B2 (en) * 2016-12-13 2019-02-05 Advanced Micro Devices, Inc. Out-of-order cache returns
CN107391089A (zh) * 2017-07-28 2017-11-24 郑州云海信息技术有限公司 一种流水线避免堵塞的电路实现方法
CN108279928B (zh) * 2018-01-30 2021-03-19 上海兆芯集成电路有限公司 微指令调度方法及使用此方法的装置
CN108415730B (zh) * 2018-01-30 2021-06-01 上海兆芯集成电路有限公司 微指令调度方法及使用此方法的装置
CN110889147B (zh) * 2019-11-14 2022-02-08 中国人民解放军国防科技大学 一种利用填充缓存抵御Cache边信道攻击的方法
CN111142941A (zh) * 2019-11-27 2020-05-12 核芯互联科技(青岛)有限公司 一种非阻塞高速缓存缺失处理方法及装置
CN111274584B (zh) * 2020-01-17 2022-07-15 中国科学院计算技术研究所 一种基于缓存回滚以防御处理器瞬态攻击的装置
CN112703489A (zh) * 2020-04-14 2021-04-23 深圳市大疆创新科技有限公司 控制器、存储器件访问系统、电子设备和数据传输方法
WO2022094964A1 (zh) * 2020-11-06 2022-05-12 华为技术有限公司 处理指令的方法以及图计算装置
CN114416147B (zh) * 2022-01-21 2023-06-09 深圳宏芯宇电子股份有限公司 固件载入方法、存储器及计算机可读存储介质

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7555610B2 (en) * 2003-11-18 2009-06-30 Panasonic Corporation Cache memory and control method thereof
CN101477454A (zh) * 2009-01-22 2009-07-08 浙江大学 嵌入式处理器的乱序执行控制装置
CN101526895B (zh) * 2009-01-22 2011-01-05 杭州中天微系统有限公司 基于指令双发射的高性能低功耗嵌入式处理器
CN101526896B (zh) * 2009-01-22 2011-11-23 杭州中天微系统有限公司 嵌入式处理器的加载/存储单元

Also Published As

Publication number Publication date
CN102662634A (zh) 2012-09-12

Similar Documents

Publication Publication Date Title
CN102662634B (zh) 非阻塞发射和执行的存储器访问执行装置
US9442861B2 (en) System and method for out-of-order prefetch instructions in an in-order pipeline
CN103620555B (zh) 抑制不正确的推测性执行路径上的控制转移指令
US11048506B2 (en) Tracking stores and loads by bypassing load store units
US7840761B2 (en) Apparatus and method for supporting execution of prefetch threads
US8627047B2 (en) Store data forwarding with no memory model restrictions
CN101410797A (zh) 无序处理器中的事务存储器
US9940139B2 (en) Split-level history buffer in a computer processing unit
KR101093784B1 (ko) 리플레이 메커니즘을 구비한 로드 저장 유닛
US20120173848A1 (en) Pipeline flush for processor that may execute instructions out of order
US7743223B2 (en) Decoupling of write address from its associated write data in a store to a shared memory in a multiprocessor system
KR20190033084A (ko) 로드 스토어 유닛들을 바이패싱하여 스토어 및 로드 추적
KR20190051036A (ko) 벡터 명령들에 대한 요소간 어드레스 해저드들의 처리
US10318432B2 (en) Implementing barriers to efficiently support cumulativity in a weakly ordered memory system
EP2284711A1 (en) Decoupled store address and data in a multiprocessor system
US11921634B2 (en) Leveraging processing-in-memory (PIM) resources to expedite non-PIM instructions executed on a host
JPH02239331A (ja) データ処理システム及びその命令実行を促進する方法
US7430657B2 (en) System, method and device for queuing branch predictions
WO2005010750A2 (en) Store-to-load forwarding buffer using indexed lookup
US10521262B2 (en) Memory access request for a memory protocol
US11481219B2 (en) Store prefetches for dependent loads in a processor
US20080282050A1 (en) Methods and arrangements for controlling memory operations
US20080282051A1 (en) Methods and arrangements for controlling results of memory retrival requests
US11182161B2 (en) Fractional or partial line usage prediction in a processor
CN117270972A (zh) 指令处理方法、装置、设备和介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C53 Correction of patent for invention or patent application
CB03 Change of inventor or designer information

Inventor after: Ge Haitong

Inventor after: Leng Bing

Inventor after: Yan Chuanqing

Inventor after: Huang Huanhuan

Inventor after: Zhao Kuan

Inventor before: Ge Haitong

Inventor before: Leng Bing

Inventor before: Yan Chuanqing

Inventor before: Huang Huanhuan

COR Change of bibliographic data

Free format text: CORRECT: INVENTOR; FROM: