CN110908716A - 一种向量聚合装载指令的实现方法 - Google Patents

一种向量聚合装载指令的实现方法 Download PDF

Info

Publication number
CN110908716A
CN110908716A CN201911113890.6A CN201911113890A CN110908716A CN 110908716 A CN110908716 A CN 110908716A CN 201911113890 A CN201911113890 A CN 201911113890A CN 110908716 A CN110908716 A CN 110908716A
Authority
CN
China
Prior art keywords
vector
data
instruction
micro
load
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
CN201911113890.6A
Other languages
English (en)
Other versions
CN110908716B (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.)
National University of Defense Technology
Original Assignee
National University of Defense Technology
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 National University of Defense Technology filed Critical National University of Defense Technology
Priority to CN201911113890.6A priority Critical patent/CN110908716B/zh
Publication of CN110908716A publication Critical patent/CN110908716A/zh
Application granted granted Critical
Publication of CN110908716B publication Critical patent/CN110908716B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30094Condition code generation, e.g. Carry, Zero flag
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3867Concurrent instruction execution, e.g. pipeline or look ahead using instruction pipelines

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Complex Calculations (AREA)

Abstract

本发明涉及微处理器设计技术领域,具体涉及一种向量聚合装载指令的实现方法,步骤包括:将向量聚合装载指令拆分为多个单元素的普通装载微操作;将拆分后微操作及相应的元素序号发往指令队列中;操作数准备好后,将单元素装载微操作发往存储流水线获取数据;将获取到的数据写入相应的数据缓存项的对应元素中;数据缓存项所有元素数据写入后,将结果数据从数据缓存写到结果总线上,向量聚合装载指令执行完毕。本发明能够有效提高向量聚合装载指令执行的性能,同时能最大限度利用普通装载指令的通路,适用于高性能乱序超标量微处理器,具有实现简单、性能高的优点。

Description

一种向量聚合装载指令的实现方法
技术领域
本发明涉及微处理器设计技术领域,具体涉及一种向量聚合装载指令的实现方法。
背景技术
为了适应应用程序的发展,提高程序执行效率,在主流指令集中都增加了多种向量扩展。充分利用向量操作的并行性可以提高系统性能。在向量扩展中,有一类向量聚合装载指令(Gather Load,记为GLoad),和普通装载指令有很大区别。如图1(a)所示,普通装载指令将存储空间中的一段连续地址的数据装载到寄存器中。而对于向量聚合装载指令,如图1(b)所示,向量的每个元素地址不同,该指令需要从存储的多个不相关的区域分别取出一个元素,并装载到寄存器对应的元素区域。
普通装载指令通常访问一个存储地址的连续区域,通常只需要一个访存操作就能完成。而向量聚合装载指令同时需要访问多个不同的存储地址,在实现上有很大的难度。为了保持微处理器设计的简洁性,可以将该指令拆分为多个微操作,每个微操作获取一个地址的数据,然后再将这些数据组装为一个寄存器宽度的数据。这样做可以最大限度利用现有的访存通路,避免额外的硬件开销。如图2所示,向量聚合装载指令为:GLoad Zd,Zn,Rm,其中Zd为目的向量寄存器,Zn为源向量寄存器,Rm为源标量寄存器;拆分后的微操作序列中,Zni表示源操作为Zn的第i个元素。
如果进行这样的微操作拆分,那么对于向量长度为4个元素的GLoad指令来说,需要拆分为7个微操作才能完成一个向量聚合装载指令的功能。这样拆分后,除了数据获取的Load操作外,还增加了3个数据转换的Perm操作,从而增加了指令执行的功耗和指令执行的延迟,导致性能下降。另外,在硬件设计上也需要增加数据转换的perm操作。
申请号为201810668398.4的中国专利文献公开了一种面向标量和向量指令混合执行的发射方法及装置,该方法可以用于向量聚合装载指令的发射和管理,但是该方法有以下三个缺点:1)向量缓冲部件微操作管理的功能和发射队列功能重复,造成资源浪费。2)由于向量缓冲部件有微操作管理的逻辑,故部件资源较大,受限于整个芯片硬件资源,向量缓冲部件无法同时支持多个向量聚合装载指令,造成多个向量聚合装载指令无法并行执行,程序性能受限。3)由于发射队列和向量缓冲部件中都有指令要发往流水线,需要额外的仲裁部件支持,并且指令之间顺序管理变复杂。
发明内容
本发明要解决的技术问题:针对现有技术的上述问题,提供一种向量聚合装载指令的实现方法,本发明能够有效提高向量聚合装载指令执行的性能,同时能最大限度利用普通装载指令的通路,适用于高性能乱序超标量微处理器,具有实现简单、性能高的优点。
为了解决上述技术问题,本发明采用的技术方案为:
一种向量聚合装载指令的实现方法,实施步骤包括:
1)将向量聚合装载指令按照向量元素大小拆分为多个普通装载微操作;
2)将拆分后的普通装载微操作发往指令队列中;
3)在指令队列中等待普通装载微操的源操作数准备好,在源操作数准备好后将对应的普通装载微操作发射到存储流水线中并带上向量元素序号;
4)执行单个元素的普通装载微操作;
5)判断是否执行成功,如果执行成功则跳转执行下一步;否则发射队列需要择机将该元素的访存操作重新发射到流水线中获取数据,跳转执行步骤3);
6)查询/分配数据缓存项;
7)将获取的数据写入到数据缓存;
8)将该普通装载微操作对应的元素标记为“完成”;
9)判断全部元素获取到数据是否成立,如果尚未成立则继续等待并跳转执行步骤8);否则,将数据缓存中的数据写出数据到结果总线;
10)在对应向量聚合装载指令的数据都写出后将数据缓存条目释放。
可选地,步骤1)将向量聚合装载指令按照向量元素大小拆分为多个普通装载微操作时,每个存储操作只能获取一个地址出的数据,拆分出普通装载微操作的个数等于向量长度除以向量元素大小,且拆分出向量元素个数的普通装载微操作均附带对应的向量元素序号,每个普通装载微操作获取单个元素的存储数据,拆分后的指令微操作序列不需要数据转换微操作。
可选地,步骤1)将向量聚合装载指令按照向量元素大小拆分为多个普通装载微操作时,拆分得到的普通装载微操作的指令格式为:
Load Zdx, Znx, Rm
上述指令表示使用向量寄存器Zn的第x个元素Znx和源操作数Rm计算出需要访存的地址,从该地址对应的存储空间中取出元素大小的数据并存放于目的寄存器Zd的第x个元素Zdx处。
可选地,步骤2)将拆分后的普通装载微操作发往指令队列中时还包括在指令队列中增加对元素序号的存储的步骤。
可选地,步骤7)将获取的数据写入到数据缓存时,所述数据缓存是指在存储流水线外增加的用于缓存单个元素的普通装载微操作获取数据的数据缓存,该数据缓存合并多个单元素数据,形成向量聚合装载指令的最终结果数据。
此外,本发明还提供一种微处理器,所述微处理器被编程或配置以执行所述向量聚合装载指令的实现方法的步骤。
和现有技术相比,本发明具有下述优点:
1、性能高。指令执行延迟短、存储操作并发度高。(1)与现有技术相比,本发明方法消除了指令拆分中的数据转换Perm操作,减少了拆分的微操作个数,微操作数的减少使得整个处理器能同时处理的有效指令数增加。同时,减少的Perm操作,缩短了向量聚合装载指令执行的延迟。(2)由于对于每个向量聚合装载指令,只需要增加寄存器宽度的数据缓存。中国专利申请号为201810668398.4的专利文献记载的方案由于向量缓冲部件设计复杂,难以支持多个向量聚合装载指令的并发执行。而本发明只需要数据缓存的项数,就能提高向量聚合装载指令执行的并发性,从而提高程序性能。
2、实现简单。相对于中国专利申请号为201810668398.4的专利文献记载的方案而言,本发明方法的指令管理简单很多,不用修改指令管理的控制部分,只需在每个指令信息中增加元素序号,同时不用额外增加复杂的向量缓冲部件和相关的仲裁部件,极大减小了实现的开销。整个指令的执行过程可以最大限度利用普通装载指令的执行通路。
附图说明
图1为现有的普通装载指令以及向量聚合装载指令的示意图,其中图1(a)为现有的普通装载指令示意图;图1(b)为现有的向量聚合装载指令示意图。
图2 为现有的向量聚合装载指令的拆分方法示意图。
图3为本发明实施例方法的基本实施流程示意图。
图4为本发明实施例方法的向量聚合装载指令的拆分方法示意图。
图5为本发明实施例方法的数据缓存机构示意图。
具体实施方式
如图3所示,本实施例向量聚合装载指令的实现方法的实施步骤包括:
1)将向量聚合装载指令按照向量元素大小拆分为多个普通装载微操作;
2)将拆分后的普通装载微操作发往指令队列中;
3)在指令队列中等待普通装载微操的源操作数准备好,在源操作数准备好后将对应的普通装载微操作发射到存储流水线中并带上向量元素序号;
4)执行单个元素的普通装载微操作;
5)判断是否执行成功,如果执行成功则跳转执行下一步;否则发射队列需要择机将该元素的访存操作重新发射到流水线中获取数据,跳转执行步骤3);
6)查询/分配数据缓存项;
7)将获取的数据写入到数据缓存;
8)将该普通装载微操作对应的元素标记为“完成”;
9)判断全部元素获取到数据是否成立,如果尚未成立则继续等待并跳转执行步骤8);否则,将数据缓存中的数据写出数据到结果总线;
10)在对应向量聚合装载指令的数据都写出后将数据缓存条目释放。
本实施例中,步骤1)将向量聚合装载指令按照向量元素大小拆分为多个普通装载微操作时,每个存储操作只能获取一个地址出的数据,拆分出普通装载微操作的个数等于向量长度除以向量元素大小,且拆分出向量元素个数的普通装载微操作均附带对应的向量元素序号,每个普通装载微操作获取单个元素的存储数据,拆分后的指令微操作序列不需要数据转换微操作。为了充分利用现有的存储指令的通路,每个存储操作只能获取一个地址出的数据。所以需要拆分出的微操作个数等于向量长度除以向量元素大小。如图4所示,其中拆分后的微操作序列:其中Zni表示源操作为Zn的第i个元素,参见图4可知,每个微操作数信息和原来的向量聚合装载指令一致,额外带上相应的元素序号。和图2的实现方式的不同点在于本发明无需数据转换的多个Perm操作(数据转换微操作)。
本实施例中,步骤1)将向量聚合装载指令按照向量元素大小拆分为多个普通装载微操作时,拆分得到的普通装载微操作的指令格式为:
Load Zdx, Znx, Rm
上述指令表示使用向量寄存器Zn的第x个元素Znx和源操作数Rm计算出需要访存的地址,从该地址对应的存储空间中取出元素大小的数据并存放于目的寄存器Zd的第x个元素Zdx处。
本实施例中,步骤2)将拆分后的普通装载微操作发往指令队列中时还包括在指令队列中增加对元素序号的存储的步骤。步骤2)指令队列无需对拆分后的微操作额外的操作,只需要在指令队列中增加对元素序号的存储。而元素序号的存储通常只需要几个bit,例如对于512bit宽度的向量,在元素大小为32bit时,只有16个元素,只需要4bit就能存储元素的序号。
步骤3)在指令队列中等待普通装载微操的源操作数准备好,等待该指令的源操作数准备好后,将该微操作发射到存储流水线中,带上向量元素序号。这里向量聚合装载指令的发射的条件和普通存储操作完全相同,都需要源操作数准备好。操作数来源可以是结果总线、寄存器或者是立即数。元素在向量中的序号用于地址计算时,从源操作数中抽取相应的元素的值,同时也用于标记写结果时应该写到结果寄存器的哪个区域。
步骤4)中单个元素的执行方法和普通装载指令的执行一致,通常包括:地址计算,虚实地址转换,获取数据,写结果。这里只有地址计算的操作数来源和普通装载指令有区别,在地址计算时从向量寄存器Zn中抽取相应的元素值作为输入,计算出相应的存储地址。单个元素装载微操作执行成功指:从存储中获取到相应的数据;或者在有断言机制的向量存储指令中,断言寄存器指示该元素是非活跃的,那么无需获取数据,可以直接标示指令执行成功。
本实施例中步骤2)~步骤5)的微操作执行步骤和普通装载指令执行步骤完全相同,只需要在指令执行时带上相应的元素序号,在地址计算时从向量寄存器Zn中抽取相应的元素值作为输入即可,其余控制和数据通路都直接使用原有的普通装载指令的执行通路。
步骤6)查询/分配数据缓存项时包括在数据缓存中为该装载指令分配新数据缓存项,或者查询已分配的数据缓存项。一般来说,只需要设置少量的数据缓存项即可满足需求,通过向量聚合装载指令的目的寄存器Zd标识不同的向量聚合装载指令。
本实施例中,步骤7)将获取的数据写入到数据缓存时,所述数据缓存是指在存储流水线外增加的用于缓存单个元素的普通装载微操作获取数据的数据缓存,该数据缓存合并多个单元素数据,形成向量聚合装载指令的最终结果数据。步骤7)将获取的数据写入到对应的数据缓存中时,由于单个元素的数据无法直接写到结果总线上,所以需要进行元素数据的缓存。如图5所示,数据缓存专门为向量聚合装载指令设置,数据缓存长度和向量寄存器长度一致。单个元素的装载指令执行成功后,将数据写入到对应的数据缓存项目对应的元素位置。例如,如果当前元素序号为2,那么将对应的数据填入到图3数据缓存中的2号元素位置处。
本实施例中,步骤8)将该普通装载微操作对应的元素标记为“完成”表示该元素的数据已经获取,并存放到相应的数据缓存中。
本实施例中,步骤9)用于判断全部元素获取到数据是否成立。当数据完成标记中该条目所有元素都完成时,就可以将数据写出到数据总线上。此时指令的输出数据为数据缓存中缓存的按元素整理好的数据,是整个指令最终的输出,无需再进行数据的变换。
最终通过步骤10)释放数据缓存,向量聚合装载指令执行完毕。
此外,本实施例还提供一种微处理器,该微处理器被编程或配置以执行本实施例前述向量聚合装载指令的实现方法的步骤。
以上所述仅是本发明的优选实施方式,本发明的保护范围并不仅局限于上述实施例,凡属于本发明思路下的技术方案均属于本发明的保护范围。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理前提下的若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (6)

1.一种向量聚合装载指令的实现方法,其特征在于实施步骤包括:
1)将向量聚合装载指令按照向量元素大小拆分为多个普通装载微操作;
2)将拆分后的普通装载微操作发往指令队列中;
3)在指令队列中等待普通装载微操的源操作数准备好,在源操作数准备好后将对应的普通装载微操作发射到存储流水线中并带上向量元素序号;
4)执行单个元素的普通装载微操作;
5)判断是否执行成功,如果执行成功则跳转执行下一步;否则发射队列需要择机将该元素的访存操作重新发射到流水线中获取数据,跳转执行步骤3);
6)查询/分配数据缓存项;
7)将获取的数据写入到数据缓存;
8)将该普通装载微操作对应的元素标记为“完成”;
9)判断全部元素获取到数据是否成立,如果尚未成立则继续等待并跳转执行步骤8);否则,将数据缓存中的数据写出数据到结果总线;
10)在对应向量聚合装载指令的数据都写出后将数据缓存条目释放。
2.根据权利要求1所述的向量聚合装载指令的实现方法,其特征在于,步骤1)将向量聚合装载指令按照向量元素大小拆分为多个普通装载微操作时,每个存储操作只能获取一个地址出的数据,拆分出普通装载微操作的个数等于向量长度除以向量元素大小,且拆分出向量元素个数的普通装载微操作均附带对应的向量元素序号,每个普通装载微操作获取单个元素的存储数据,拆分后的指令微操作序列不需要数据转换微操作。
3.根据权利要求2所述的向量聚合装载指令的实现方法,其特征在于,步骤1)将向量聚合装载指令按照向量元素大小拆分为多个普通装载微操作时,拆分得到的普通装载微操作的指令格式为:
Load Zdx, Znx, Rm
上述指令表示使用向量寄存器Zn的第x个元素Znx和源操作数Rm计算出需要访存的地址,从该地址对应的存储空间中取出元素大小的数据并存放于目的寄存器Zd的第x个元素Zdx处。
4.根据权利要求1所述的向量聚合装载指令的实现方法,其特征在于,步骤2)将拆分后的普通装载微操作发往指令队列中时还包括在指令队列中增加对元素序号的存储的步骤。
5.根据权利要求1所述的向量聚合装载指令的实现方法,其特征在于,步骤7)将获取的数据写入到数据缓存时,所述数据缓存是指在存储流水线外增加的用于缓存单个元素的普通装载微操作获取数据的数据缓存,该数据缓存合并多个单元素数据,形成向量聚合装载指令的最终结果数据。
6.一种微处理器,其特征在于,所述微处理器被编程或配置以执行权利要求1~5中任意一项所述向量聚合装载指令的实现方法的步骤。
CN201911113890.6A 2019-11-14 2019-11-14 一种向量聚合装载指令的实现方法 Active CN110908716B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911113890.6A CN110908716B (zh) 2019-11-14 2019-11-14 一种向量聚合装载指令的实现方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911113890.6A CN110908716B (zh) 2019-11-14 2019-11-14 一种向量聚合装载指令的实现方法

Publications (2)

Publication Number Publication Date
CN110908716A true CN110908716A (zh) 2020-03-24
CN110908716B CN110908716B (zh) 2022-02-08

Family

ID=69817669

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911113890.6A Active CN110908716B (zh) 2019-11-14 2019-11-14 一种向量聚合装载指令的实现方法

Country Status (1)

Country Link
CN (1) CN110908716B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113590197A (zh) * 2021-07-30 2021-11-02 中国人民解放军国防科技大学 一种支持可变长向量处理的可配置处理器及其实现方法
WO2022026578A1 (en) * 2020-07-30 2022-02-03 Marvell Asia Pte Ltd Method and apparatus for back end gather/scatter memory coalescing
US11567767B2 (en) 2020-07-30 2023-01-31 Marvell Asia Pte, Ltd. Method and apparatus for front end gather/scatter memory coalescing
CN116841614A (zh) * 2023-05-29 2023-10-03 进迭时空(杭州)科技有限公司 乱序访存机制下的顺序向量调度方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5600811A (en) * 1993-03-31 1997-02-04 Motorola Inc. Vector move instruction in a vector data processing system and method therefor
US20130326160A1 (en) * 2012-06-02 2013-12-05 Zeev Sperber Gather using index array and finite state machine
CN106844533A (zh) * 2016-12-29 2017-06-13 北京师范大学 一种数据分组聚集方法及装置
CN106951215A (zh) * 2017-04-25 2017-07-14 上海兆芯集成电路有限公司 减少由加载队列满载引起的流水线推迟的处理器和方法
CN106951214A (zh) * 2011-09-26 2017-07-14 英特尔公司 用于提供利用跨越功能的向量加载操作/存储操作的指令和逻辑
CN107636611A (zh) * 2015-06-08 2018-01-26 高通股份有限公司 用于临时加载指令的系统、设备和方法
CN109062604A (zh) * 2018-06-26 2018-12-21 天津飞腾信息技术有限公司 一种面向标量和向量指令混合执行的发射方法及装置

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5600811A (en) * 1993-03-31 1997-02-04 Motorola Inc. Vector move instruction in a vector data processing system and method therefor
CN106951214A (zh) * 2011-09-26 2017-07-14 英特尔公司 用于提供利用跨越功能的向量加载操作/存储操作的指令和逻辑
US20130326160A1 (en) * 2012-06-02 2013-12-05 Zeev Sperber Gather using index array and finite state machine
CN107636611A (zh) * 2015-06-08 2018-01-26 高通股份有限公司 用于临时加载指令的系统、设备和方法
CN106844533A (zh) * 2016-12-29 2017-06-13 北京师范大学 一种数据分组聚集方法及装置
CN106951215A (zh) * 2017-04-25 2017-07-14 上海兆芯集成电路有限公司 减少由加载队列满载引起的流水线推迟的处理器和方法
CN109062604A (zh) * 2018-06-26 2018-12-21 天津飞腾信息技术有限公司 一种面向标量和向量指令混合执行的发射方法及装置

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
BLDV:向量数据批量载入指令的设计与实现: "王永文 等", 《第十六届计算机工程与工艺年会暨第二届微处理器技术论坛论文集》 *
NASER SEDAGHATI等: "StVEC: A Vector Instruction Extension for High Performance Stencil Computation", 《 2011 INTERNATIONAL CONFERENCE ON PARALLEL ARCHITECTURES AND COMPILATION TECHNIQUES》 *
彭杰: "高性能DSP取指和指令派发部件的设计与验证", 《中国优秀硕士学位论文全文数据库(信息科技辑)》 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022026578A1 (en) * 2020-07-30 2022-02-03 Marvell Asia Pte Ltd Method and apparatus for back end gather/scatter memory coalescing
US11567767B2 (en) 2020-07-30 2023-01-31 Marvell Asia Pte, Ltd. Method and apparatus for front end gather/scatter memory coalescing
US11567771B2 (en) 2020-07-30 2023-01-31 Marvell Asia Pte, Ltd. Method and apparatus for back end gather/scatter memory coalescing
CN113590197A (zh) * 2021-07-30 2021-11-02 中国人民解放军国防科技大学 一种支持可变长向量处理的可配置处理器及其实现方法
CN113590197B (zh) * 2021-07-30 2023-09-26 中国人民解放军国防科技大学 一种支持可变长向量处理的可配置处理器及其实现方法
CN116841614A (zh) * 2023-05-29 2023-10-03 进迭时空(杭州)科技有限公司 乱序访存机制下的顺序向量调度方法
CN116841614B (zh) * 2023-05-29 2024-03-15 进迭时空(杭州)科技有限公司 乱序访存机制下的顺序向量调度方法

Also Published As

Publication number Publication date
CN110908716B (zh) 2022-02-08

Similar Documents

Publication Publication Date Title
CN110908716B (zh) 一种向量聚合装载指令的实现方法
EP1023659B1 (en) Efficient processing of clustered branch instructions
US9569214B2 (en) Execution pipeline data forwarding
US6108766A (en) Structure of processor having a plurality of main processors and sub processors, and a method for sharing the sub processors
US9886278B2 (en) Computing architecture and method for processing data
CN108257078B (zh) 存储器知晓重排序源
US10481957B2 (en) Processor and task processing method therefor, and storage medium
US10031773B2 (en) Method to communicate task context information and device therefor
KR20190082079A (ko) 원격 원자 연산들의 공간적 및 시간적 병합
US20030177288A1 (en) Multiprocessor system
US9870315B2 (en) Memory and processor hierarchy to improve power efficiency
TWI613590B (zh) 處理器流水線中的靈活的指令執行
EP3985503A1 (en) Mask operation method for explicit independent mask register in gpu
US9442759B2 (en) Concurrent execution of independent streams in multi-channel time slice groups
WO2020132841A1 (zh) 一种基于多线程的指令处理方法及装置
US20040199749A1 (en) Method and apparatus to limit register file read ports in an out-of-order, multi-stranded processor
US9747109B2 (en) Flexible instruction execution in a processor pipeline
US20110066813A1 (en) Method And System For Local Data Sharing
CN114924792A (zh) 指令译码单元、指令执行单元及相关装置和方法
KR20230124598A (ko) 높은 처리량 및 낮은 오버헤드 커널 개시를 위한 압축 커맨드 패킷
US20210089305A1 (en) Instruction executing method and apparatus
JP5238876B2 (ja) 情報処理装置及び情報処理方法
JPH06236272A (ja) スーパースカラ・プロセッサ・システムの同期化効率を向上させる方法およびシステム
JP4631442B2 (ja) プロセッサ
US20240143507A1 (en) Method, Computer Program, and Computer System for Prefetching Data During Execution of an Application Program

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant