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

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

Info

Publication number
CN102662634A
CN102662634A CN2012100762330A CN201210076233A CN102662634A CN 102662634 A CN102662634 A CN 102662634A CN 2012100762330 A CN2012100762330 A CN 2012100762330A CN 201210076233 A CN201210076233 A CN 201210076233A CN 102662634 A CN102662634 A CN 102662634A
Authority
CN
China
Prior art keywords
written
cache
instruction
storage instruction
formation
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
Application number
CN2012100762330A
Other languages
English (en)
Other versions
CN102662634B (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

Images

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 (8)

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

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104756070A (zh) * 2012-11-02 2015-07-01 先进微装置公司 存储回放政策
CN105446939A (zh) * 2015-12-04 2016-03-30 上海兆芯集成电路有限公司 由装置端推核心入队列的装置
CN107391089A (zh) * 2017-07-28 2017-11-24 郑州云海信息技术有限公司 一种流水线避免堵塞的电路实现方法
CN107885530A (zh) * 2016-11-14 2018-04-06 上海兆芯集成电路有限公司 提交高速缓存行的方法和指令高速缓存
CN108279928A (zh) * 2018-01-30 2018-07-13 上海兆芯集成电路有限公司 微指令调度方法及使用此方法的装置
CN108415730A (zh) * 2018-01-30 2018-08-17 上海兆芯集成电路有限公司 微指令调度方法及使用此方法的装置
CN110036375A (zh) * 2016-12-13 2019-07-19 超威半导体公司 无序高速缓存返回
CN110889147A (zh) * 2019-11-14 2020-03-17 中国人民解放军国防科技大学 一种利用填充缓存抵御Cache边信道攻击的方法
CN111142941A (zh) * 2019-11-27 2020-05-12 核芯互联科技(青岛)有限公司 一种非阻塞高速缓存缺失处理方法及装置
CN111274584A (zh) * 2020-01-17 2020-06-12 中国科学院计算技术研究所 一种基于缓存回滚以防御处理器瞬态攻击的装置
CN112379930A (zh) * 2015-01-07 2021-02-19 美光科技公司 产生并执行控制流
WO2021207919A1 (zh) * 2020-04-14 2021-10-21 深圳市大疆创新科技有限公司 控制器、存储器件访问系统、电子设备和数据传输方法
CN114416147A (zh) * 2022-01-21 2022-04-29 深圳宏芯宇电子股份有限公司 固件载入方法、存储器及计算机可读存储介质
WO2022094964A1 (zh) * 2020-11-06 2022-05-12 华为技术有限公司 处理指令的方法以及图计算装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1882923A (zh) * 2003-11-18 2006-12-20 松下电器产业株式会社 高速缓冲存储器及其控制方法
CN101477454A (zh) * 2009-01-22 2009-07-08 浙江大学 嵌入式处理器的乱序执行控制装置
CN101526896A (zh) * 2009-01-22 2009-09-09 杭州中天微系统有限公司 嵌入式处理器的加载/存储单元
CN101526895A (zh) * 2009-01-22 2009-09-09 杭州中天微系统有限公司 基于指令双发射的高性能低功耗嵌入式处理器

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1882923A (zh) * 2003-11-18 2006-12-20 松下电器产业株式会社 高速缓冲存储器及其控制方法
CN101477454A (zh) * 2009-01-22 2009-07-08 浙江大学 嵌入式处理器的乱序执行控制装置
CN101526896A (zh) * 2009-01-22 2009-09-09 杭州中天微系统有限公司 嵌入式处理器的加载/存储单元
CN101526895A (zh) * 2009-01-22 2009-09-09 杭州中天微系统有限公司 基于指令双发射的高性能低功耗嵌入式处理器

Cited By (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104756070A (zh) * 2012-11-02 2015-07-01 先进微装置公司 存储回放政策
CN104756070B (zh) * 2012-11-02 2017-11-24 先进微装置公司 实施可高速缓冲存储回放政策的方法和设备
CN112379930A (zh) * 2015-01-07 2021-02-19 美光科技公司 产生并执行控制流
CN105446939A (zh) * 2015-12-04 2016-03-30 上海兆芯集成电路有限公司 由装置端推核心入队列的装置
CN105446939B (zh) * 2015-12-04 2019-02-26 上海兆芯集成电路有限公司 由装置端推核心入队列的装置
CN107885530A (zh) * 2016-11-14 2018-04-06 上海兆芯集成电路有限公司 提交高速缓存行的方法和指令高速缓存
CN107885530B (zh) * 2016-11-14 2020-06-23 上海兆芯集成电路有限公司 提交高速缓存行的方法和指令高速缓存
CN110036375A (zh) * 2016-12-13 2019-07-19 超威半导体公司 无序高速缓存返回
CN110036375B (zh) * 2016-12-13 2023-11-03 超威半导体公司 无序高速缓存返回
CN107391089A (zh) * 2017-07-28 2017-11-24 郑州云海信息技术有限公司 一种流水线避免堵塞的电路实现方法
CN108415730A (zh) * 2018-01-30 2018-08-17 上海兆芯集成电路有限公司 微指令调度方法及使用此方法的装置
CN108279928A (zh) * 2018-01-30 2018-07-13 上海兆芯集成电路有限公司 微指令调度方法及使用此方法的装置
CN108415730B (zh) * 2018-01-30 2021-06-01 上海兆芯集成电路有限公司 微指令调度方法及使用此方法的装置
CN110889147A (zh) * 2019-11-14 2020-03-17 中国人民解放军国防科技大学 一种利用填充缓存抵御Cache边信道攻击的方法
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 中国科学院计算技术研究所 一种基于缓存回滚以防御处理器瞬态攻击的装置
CN111274584A (zh) * 2020-01-17 2020-06-12 中国科学院计算技术研究所 一种基于缓存回滚以防御处理器瞬态攻击的装置
WO2021207919A1 (zh) * 2020-04-14 2021-10-21 深圳市大疆创新科技有限公司 控制器、存储器件访问系统、电子设备和数据传输方法
WO2022094964A1 (zh) * 2020-11-06 2022-05-12 华为技术有限公司 处理指令的方法以及图计算装置
CN114416147A (zh) * 2022-01-21 2022-04-29 深圳宏芯宇电子股份有限公司 固件载入方法、存储器及计算机可读存储介质

Also Published As

Publication number Publication date
CN102662634B (zh) 2014-10-29

Similar Documents

Publication Publication Date Title
CN102662634B (zh) 非阻塞发射和执行的存储器访问执行装置
US8069336B2 (en) Transitioning from instruction cache to trace cache on label boundaries
KR100783828B1 (ko) 단일 스레드 프로그램의 암시적 멀티스레디드 실행을 행할수 있는 멀티스레디드 프로세서
US6691220B1 (en) Multiprocessor speculation mechanism via a barrier speculation flag
US9696995B2 (en) Parallel execution unit that extracts data parallelism at runtime
KR101655713B1 (ko) 이동 제거 연산들에서의 플래그 트래킹을 위한 시스템들 및 방법들
JP2007536626A (ja) ロードオペレーションの投機的な結果をレジスタ値にリンクするメモリファイルを検証するためのシステムおよび方法
GB2512470A (en) Systems and methods for implementing transactional memory
US9092346B2 (en) Speculative cache modification
CN109690476B (zh) 数据处理装置和方法
WO2013095392A1 (en) Systems and method for unblocking a pipeline with spontaneous load deferral and conversion to prefetch
US9940139B2 (en) Split-level history buffer in a computer processing unit
KR20190033084A (ko) 로드 스토어 유닛들을 바이패싱하여 스토어 및 로드 추적
US20120173848A1 (en) Pipeline flush for processor that may execute instructions out of order
US20180329826A1 (en) Implementing barriers to efficiently support cumulativity in a weakly ordered memory system
WO2005020088A2 (en) Decoupled store address and data in a multiprocessor system
CN110603521B (zh) 超线程处理器
US9405545B2 (en) Method and apparatus for cutting senior store latency using store prefetching
US11586462B2 (en) Memory access request for a memory protocol
CN102495724A (zh) 一种加快存储指令执行效率的数据处理器
CN102799419B (zh) 寄存器写冲突检测方法及装置、以及处理器
JP4745960B2 (ja) マイクロプロセッサにおいてデータ推測オペレーションを識別する推測ポインタ
US20050010744A1 (en) Store-to-load forwarding buffer using indexed lookup
US10261909B2 (en) Speculative cache modification
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 of 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: