CN112130901A - 基于risc-v的协处理器、数据处理方法及存储介质 - Google Patents
基于risc-v的协处理器、数据处理方法及存储介质 Download PDFInfo
- Publication number
- CN112130901A CN112130901A CN202010954828.6A CN202010954828A CN112130901A CN 112130901 A CN112130901 A CN 112130901A CN 202010954828 A CN202010954828 A CN 202010954828A CN 112130901 A CN112130901 A CN 112130901A
- Authority
- CN
- China
- Prior art keywords
- data
- vector
- processing
- processed
- coprocessor
- 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.)
- Withdrawn
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 18
- 238000012545 processing Methods 0.000 claims abstract description 125
- 239000000872 buffer Substances 0.000 claims abstract description 34
- 238000000034 method Methods 0.000 claims abstract description 32
- 230000003993 interaction Effects 0.000 claims abstract description 9
- 230000008569 process Effects 0.000 claims description 15
- 238000004590 computer program Methods 0.000 claims description 3
- 238000004364 calculation method Methods 0.000 abstract description 20
- 239000011159 matrix material Substances 0.000 abstract description 4
- 230000009286 beneficial effect Effects 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000012544 monitoring process Methods 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 3
- 230000001133 acceleration Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
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/30003—Arrangements for executing specific machine instructions
- G06F9/30007—Arrangements for executing specific machine instructions to perform operations on data operands
- G06F9/30036—Instructions to perform operations on packed data, e.g. vector, tile or matrix operations
-
- 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/3877—Concurrent instruction execution, e.g. pipeline or look ahead using a slave processor, e.g. coprocessor
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Advance Control (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
本申请提供一种基于RISC‑V的协处理器,包括:与主处理器的二级缓存相连的RoCC接口,用于实现与主处理器的数据交互;与二级缓存相连的缓冲区,用于缓存主处理器分配的待处理数据;与缓冲区相连的调度器,用于调度待处理数据至向量处理模块或标量处理模块;至少一个向量处理模块,用于处理待处理数据中的向量数据;标量处理模块,用于处理待处理数据中的标量数据。本申请能满足边缘计算应用场景中矩阵计算等对实时性、性能要求较高的计算需求。还可以将协处理器作为单独的加速器芯片,通过软件配置控制寄存器的方式,实现灵活管理和配置。本申请还提供一种数据处理方法及计算机可读存储介质,具有上述有益效果。
Description
技术领域
本申请涉及芯片领域,特别涉及一种基于RISC-V的协处理器、数据处理方法及存储介质。
背景技术
随着边缘计算的兴起,端侧数据随应用需求呈现快速增长,由于端侧计算的实时性要求较高,但由于网络延迟等问题,以人工智能推理计算为代表的中心计算任务逐渐向边缘侧延伸,边缘侧的计算需求随之增加,端侧对高性能计算也提出了新要求。
在边缘计算中,除了常用的ARM等架构的处理器外,还可以选择RISC-V架构处理器作为计算核心。RISC-V是近几年推出的一种开放的全新精简指令集架构,该架构基于BSDLicense开源协议,相比ARM等其他架构具有免费开源、低成本、轻量化、低功耗等特点。基于RISC-V开放架构的特点,其在边缘计算领域具有广阔的应用前景。
然而相关技术中基于RISC-V架构处理器对于向量类的指令较少,通用处理器基本都不支持向量计算,原因是实现向量计算开销大,面积大,功耗也会高,不能满足应用对实时高性能计算需求的问题。
发明内容
本申请的目的是提供一种基于RISC-V的协处理器、一种数据处理方法及计算机可读存储介质,通过协处理器完成主处理器难以实现的向量计算操作。
为解决上述技术问题,本申请提供一种基于RISC-V的协处理器,具体技术方案如下:
与主处理器的二级缓存相连的RoCC接口,用于与所述主处理器进行数据交互;所述主处理器为RISC-V架构处理器;
与所述二级缓存相连的缓冲区,用于缓存所述主处理器分配的待处理数据;
与所述缓冲区相连的调度器,用于调度所述待处理数据至向量处理模块或标量处理模块;
至少一个向量处理模块,用于处理所述待处理数据中的向量数据;
标量处理模块,用于处理所述待处理数据中的标量数据。
可选的,所述向量处理模块包括两个向量处理单元,所述向量处理单元包含若干向量处理子单元;
所述向量处理单元用于单独执行32位计算,或共同执行64位计算,或并行执行32位计算。
本申请还提供一种数据处理方法,基于上文所述的基于RISC-V的协处理器,包括:
接收待处理数据;
将所述待处理数据通过二级缓存加载至所述协处理器的缓冲区;
读取所述缓冲区中的所述待处理数据,并利用调度器将所述待处理数据分为向量数据和标量数据;
将所述向量数据发送至向量处理模块处理,将所述标量数据发送至标量处理模块处理。
可选的,若所述协处理器包含至少两个所述向量处理模块,利用调度器将所述待处理数据分为向量数据和标量数据之后,将所述向量数据发送至向量处理模块处理之前,还包括:
将所述向量数据划分为与所述向量处理模块的数量相同的向量子数据;
则将所述向量数据发送至向量处理模块处理包括:
将所述向量子数据分别发送至各个向量处理模块处理。
可选的,接收待处理数据之前,还包括:
基于RISC-V编译器编译工具链;所述工具栏支持向量扩展指令;
则将所述待处理数据通过二级缓存加载至所述协处理器的缓冲区包括:
利用所述工具链中的工具指令将所述待处理数据通过二级缓存加载至所述协处理器的缓冲区。
可选的,将所述向量数据发送至向量处理模块处理,将所述标量数据发送至标量处理模块处理之后,还包括:
接收所述向量处理模块的第一结果,接收所述标量处理模块的第二结果;
根据所述第一结果和所述第二结果得到处理结果;
将所述处理结果写回所述缓冲区。
可选的,将所述处理结果写回所述缓冲区后,还包括:
将所述处理结果从所述缓冲区写回所述主处理器中的预设地址。
可选的,还包括:
通过所述协处理器的RoCC接口向主处理器返回所述协处理器的状态信息。
可选的,还包括:
所述协处理器通过所述RoCC接口读取所述主处理器的缓存信息,或接收所述主处理器的指令信息。
本申请还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的方法的步骤。
本申请提供一种基于RISC-V的协处理器,包括:与主处理器的二级缓存相连的RoCC接口,用于与所述主处理器进行数据交互;所述主处理器为RISC-V架构处理器;与所述二级缓存相连的缓冲区,用于缓存所述主处理器分配的待处理数据;与所述缓冲区相连的调度器,用于调度所述待处理数据至向量处理模块或标量处理模块;至少一个向量处理模块,用于处理所述待处理数据中的向量数据;标量处理模块,用于处理所述待处理数据中的标量数据。
本申请通过建立与主处理器相连的协处理器,相比传统的计算***增加了基于RISC-V向量指令扩展的协处理器作为计算加速器,主处理器采用RISC-V架构多核处理器,通过向量指令扩展设计专用的协处理器模块,满足边缘计算应用场景中矩阵计算等对实时性、性能要求较高的计算需求。还可以将协处理器作为单独的加速器芯片,通过RoCC连接到主处理器,通过软件配置控制寄存器的方式,实现灵活管理和配置。
本申请还提供一种数据处理方法及计算机可读存储介质,具有上述有益效果,此处不再赘述。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例所提供的一种基于RISC-V的协处理器的结构示意图;
图2为本申请实施例所提供的主处理器和协处理器交互工作时的结构示意图;
图3为本申请实施例所提供的一种数据处理方法的流程图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
请参考图1和图2,图1为本申请实施例所提供的一种基于RISC-V的协处理器的结构示意图,图2为本申请实施例所提供的主处理器和协处理器交互工作时的结构示意图,图1中包括:
与主处理器的二级缓存相连的RoCC接口,用于与所述主处理器进行数据交互;所述主处理器为RISC-V架构处理器;
与所述二级缓存相连的缓冲区,用于缓存所述主处理器分配的待处理数据;
与所述缓冲区相连的调度器,用于调度所述待处理数据至向量处理模块或标量处理模块;
至少一个向量处理模块,用于处理所述待处理数据中的向量数据;
标量处理模块,用于处理所述待处理数据中的标量数据。
图1中,该协处理器包含两个向量处理模块,而本实施例对于协处理器中的向量处理模块的数量并不作具体限定,可以由本领域技术人员根据实际的向量数据处理需求加以设定。容易理解的是,向量处理模块的数量越多,其向量数据处理效率相应提高。
RoCC(Rocket Custom Coprocessor)接口是RISC-V架构专用的协处理器接口,主要执行自定义指令,实现主处理器与协处理器间的数据交互,实现对特定类型算法的计算加速。RoCC数据接口包含三种功能,一是作为Core控制接口,主要实现RoCC与主处理器之间的协处理器状态信息传递;二是作为寄存器接口,主要实现ROCC与主处理器之间的指令交互;三是作为Memorey访存接口,实现RoCC与主处理器上缓存之间的访存。
主处理器通过RoCC接口将需要协处理计算的指令缓存到缓存区,缓存的指令主要包括向量指令,同时也缓存必要的标量指令和跳转指令等。
调度器主要实现缓存区中各缓存指令的协同调度,按照指令编译顺序,进行指令的取指、译码、执行、写回等操作。
需要注意的是,在缓冲区中需要将主处理器发送的待处理数据分为标量数据和向量数据,并分别由调度器控制输入标量处理模块和向量处理模块加以处理。
标量处理模块主要执行标量计算指令。主要功能包括指令译码、标量指令计算模块、指令流控、中断控制、标量数据存储和标量单元控制寄存器等。由于加速程序不完全由向量扩展指令构成,所以,在协处理器中实现了部分标量类指令,为了减少与主处理器的交互,提高执行效率,将标量类指令单独在协处理器中实现。
向量处理模块主要执行向量计算指令。主要功能包括指令译码、向量指令计算模块、规约、混洗、全局控制寄存器等。向量处理模块包括两个相同的向量处理单元(VectorUnit),而向量处理单元中又设有向量处理子单元。每个向量单元根据实际需求设置其中向量处理子单元的数量N。向量处理单元通常有三种计算模式:每个向量单元可以单独执行32位计算,每个处理单元操作数位宽为32位;也可以进行位宽拼接,两个单元可同时执行64位向量数值操作的高32位和低32位;也可以进行计算拼接并行执行32位计算,即执行相同向量指令操作,向量单元数为单独执行的两倍,如数量N即为向量操作的单元数。如,当两个向量单元分别独立执行时,向量计算的单元数为N,当两个向量单元协同计算时,向量计算单元数为2N。上述三种计算模式可以灵活选择执行,大大提高向量处理的灵活性。
而图2中,还包括与协处理器相连的主处理器,主处理器***为***的主机,主要作用是运行神经网络推理程序等边缘计算应用,本发明实际应用时需以RISC-V架构处理器作为主处理器,该处理器通常为多核处理器,每个核芯连接一级数据缓存(即L1 D-Cache)和一级指令缓存(即L1 I-Cache),L1 Cache通过Cache一致性集线器连接到二级缓存,二级缓存实现核间共享。***设备主要包含边缘计算实际应用场景下所需的外设模块,如各种传感器、模数转换设备、图像和视频采集接口、网络接口等。
由上文可以看出,本申请实施例通过建立与主处理器相连的协处理器,相比传统的计算***增加了基于RISC-V向量指令扩展的协处理器作为计算加速器,主处理器采用RISC-V架构多核处理器,通过向量指令扩展设计专用的协处理器模块,满足边缘计算应用场景中矩阵计算等对实时性、性能要求较高的计算需求。
在上述实施例的基础上,还可以将协处理器作为单独的加速器芯片,通过RoCC接口连接到主处理器,同时主处理器需要预留RoCC接口,并可以通过软件配置寄存器的方式实现协处理器的使能,实现协处理器灵活管理和配置,降低功耗。
参见图3,图3为本申请实施例所提供的一种数据处理方法的流程图,本申请还提供一种数据处理方法,基于上文实施例所述的基于RISC-V的协处理器,包括:
S101:接收待处理数据;
S102:将所述待处理数据通过二级缓存加载至所述协处理器的缓冲区;
S103:读取所述缓冲区中的所述待处理数据,并利用调度器将所述待处理数据分为向量数据和标量数据;
S104:将所述向量数据发送至向量处理模块处理,将所述标量数据发送至标量处理模块处理。
本实施例以图2所示的主处理器和协处理器构成的处理器结构为执行主体,当接收到待处理数据时,触发主处理器上相应寄存器值发生变化,即将待处理数据交由协处理器处理。即本实施例默认接收待处理数据后主处理器存在对待处理数据的初步检验过程,目的在于检测该待处理数据是否需要交由协处理器处理,若确实需要协处理器处理,则更改相应寄存器数值,通过二级缓存发送至协处理器的缓冲区。由于本实施例重点在于如何利用协处理器进行数据处理,因此未将该过程作为独立步骤加以描述,在实际应用中可以包含上述初步检验过程,或者采用其他相类似的检验过程。
在待处理数据进入协处理器的缓冲区后,调度器将待处理数据分为向量数据和标量数据,并进行分配。由于协处理器中至少包含一个向量处理模块,同时仅包含一个标量处理模块,因此调度器需要根据当前协处理器的实际向量处理模块的数量对向量数据加以分配,使得各向量处理模块均能处理向量数据,提高向量数据的处理效率。
在此基础上,若协处理器包含至少两个向量处理模块,利用调度器将待处理数据分为向量数据和标量数据之后,将向量数据发送至向量处理模块处理之前,还应将向量数据划分为与向量处理模块的数量相同的向量子数据,则对应步骤S104中应将向量子数据分别发送至各个向量处理模块处理。需要注意的是,本实施例仅要求向量子数据的份数与向量处理模块的数量相同,而各向量处理模块所对应需要处理的向量子数据的数据量是否相同并不作限定,即调度器对于向量数据的数据量分配方式并不作为限定,本领域技术人员有能力对于向量数据进行多种方式的分配。
步骤S104之后,接收向量处理模块的第一结果,接收标量处理模块的第二结果,根据第一结果和第二结果得到处理结果,并将处理结果写回缓冲区,最后将处理结果从缓冲区写回主处理器中的预设地址。由于该待处理数据实际先发送至主处理器,因此在利用协处理器完成后,可以返回至主处理的预设地址,并返回至***设备。当然,也可以在协处理器上配置相应的接口,以便直接向数据处理请求方返回处理结果。当然,在此对于预设地址不作具体限定,可以为存储器或者缓存等。
在上文实施例的基础上,为了保证协处理器工作的稳定性,可以通过协处理器的RoCC接口向主处理器返回协处理器的状态信息,同时协处理器可以通过RoCC接口读取主处理器的缓存信息,或接收主处理器的指令信息。即RoCC接口可以用于实现主处理器和协处理器之间状态信息的交互,由于主处理器在主机上通常存在相应的监控元件,而协处理器可能并不存在监控元件,因此可以利用RoCC接口实现主处理器对协处理器的状态监控,以便协处理器在异常时及时处理。同时,缓冲区通常仅缓存待处理数据,而相应的控制指令可以利用RoCC接口传输。例如,在执行S101接收待处理数据之前,可以基于RISC-V编译器编译工具链,且工具栏支持向量扩展指令。而编译的工具链的指令来源可以通过RoCC接口加以传输。同时若工具链编译完成,执行步骤S102时可以利用工具链中的工具指令将待处理数据通过二级缓存加载至协处理器的缓冲区。需要注意的是,工具链仅需编译一次,后续在接收到待处理数据时无需反复编译,可以直接利用工具链中的编译指令。
本实施例旨在提供一种数据处理方法,即公开了主处理器与上文实施例所描述的协处理器相互协作完成数据处理的过程,特别针对于利用协处理器对向量数据的处理。通过向量指令扩展设计专用的协处理器,满足边缘计算应用场景中矩阵计算等对实时性、性能要求较高的计算需求,同时可以利用开源的编译器工具链,简化了编译流程。
本申请还提供了一种计算机可读存储介质,其上存有计算机程序,该计算机程序被执行时可以实现上述实施例所提供的步骤。该存储介质可以包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例提供的***而言,由于其与实施例提供的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
Claims (10)
1.一种基于RISC-V的协处理器,其特征在于,包括:
与主处理器的二级缓存相连的RoCC接口,用于与所述主处理器进行数据交互;所述主处理器为RISC-V架构处理器;
与所述二级缓存相连的缓冲区,用于缓存所述主处理器分配的待处理数据;
与所述缓冲区相连的调度器,用于调度所述待处理数据至向量处理模块或标量处理模块;
至少一个向量处理模块,用于处理所述待处理数据中的向量数据;
标量处理模块,用于处理所述待处理数据中的标量数据。
2.根据权利要求1所述的协处理器,其特征在于,所述向量处理模块包括两个向量处理单元,所述向量处理单元包含若干向量处理子单元;
所述向量处理单元用于单独执行32位计算,或共同执行64位计算,或并行执行32位计算。
3.一种数据处理方法,基于权利要求1或2所述的基于RISC-V的协处理器,其特征在于,包括:
接收待处理数据;
将所述待处理数据通过二级缓存加载至所述协处理器的缓冲区;
读取所述缓冲区中的所述待处理数据,并利用调度器将所述待处理数据分为向量数据和标量数据;
将所述向量数据发送至向量处理模块处理,将所述标量数据发送至标量处理模块处理。
4.根据权利要求3所述的数据处理方法,其特征在于,若所述协处理器包含至少两个所述向量处理模块,利用调度器将所述待处理数据分为向量数据和标量数据之后,将所述向量数据发送至向量处理模块处理之前,还包括:
将所述向量数据划分为与所述向量处理模块的数量相同的向量子数据;
则将所述向量数据发送至向量处理模块处理包括:
将所述向量子数据分别发送至各个向量处理模块处理。
5.根据权利要求3所述的数据处理方法,其特征在于,接收待处理数据之前,还包括:
基于RISC-V编译器编译工具链;所述工具栏支持向量扩展指令;
则将所述待处理数据通过二级缓存加载至所述协处理器的缓冲区包括:
利用所述工具链中的工具指令将所述待处理数据通过二级缓存加载至所述协处理器的缓冲区。
6.根据权利要求3所述的数据处理方法,其特征在于,将所述向量数据发送至向量处理模块处理,将所述标量数据发送至标量处理模块处理之后,还包括:
接收所述向量处理模块的第一结果,接收所述标量处理模块的第二结果;
根据所述第一结果和所述第二结果得到处理结果;
将所述处理结果写回所述缓冲区。
7.根据权利要求6所述的数据处理方法,其特征在于,将所述处理结果写回所述缓冲区后,还包括:
将所述处理结果从所述缓冲区写回所述主处理器中的预设地址。
8.根据权利要求3所述的数据处理方法,其特征在于,还包括:
通过所述协处理器的RoCC接口向主处理器返回所述协处理器的状态信息。
9.根据权利要求8所述的数据处理方法,其特征在于,还包括:
所述协处理器通过所述RoCC接口读取所述主处理器的缓存信息,或接收所述主处理器的指令信息。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求3-9任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010954828.6A CN112130901A (zh) | 2020-09-11 | 2020-09-11 | 基于risc-v的协处理器、数据处理方法及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010954828.6A CN112130901A (zh) | 2020-09-11 | 2020-09-11 | 基于risc-v的协处理器、数据处理方法及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112130901A true CN112130901A (zh) | 2020-12-25 |
Family
ID=73845442
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010954828.6A Withdrawn CN112130901A (zh) | 2020-09-11 | 2020-09-11 | 基于risc-v的协处理器、数据处理方法及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112130901A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112860320A (zh) * | 2021-02-09 | 2021-05-28 | 山东英信计算机技术有限公司 | 基于risc-v指令集进行数据处理的方法、***、设备及介质 |
CN112988238A (zh) * | 2021-05-06 | 2021-06-18 | 成都启英泰伦科技有限公司 | 一种基于可扩展指令集cpu内核的扩展运算装置及方法 |
CN113312303A (zh) * | 2021-04-30 | 2021-08-27 | 展讯通信(上海)有限公司 | 处理器微架构、SoC芯片及低功耗智能设备 |
CN114138342A (zh) * | 2022-01-25 | 2022-03-04 | 北京大学 | Rocc协处理器接口模型及其自动生成工具和实现方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070250681A1 (en) * | 2006-04-10 | 2007-10-25 | International Business Machines Corporation | Independent programmable operation sequence processor for vector processing |
CN111047035A (zh) * | 2019-12-09 | 2020-04-21 | Oppo广东移动通信有限公司 | 神经网络处理器、芯片和电子设备 |
CN111078287A (zh) * | 2019-11-08 | 2020-04-28 | 苏州浪潮智能科技有限公司 | 一种向量运算协处理方法与装置 |
-
2020
- 2020-09-11 CN CN202010954828.6A patent/CN112130901A/zh not_active Withdrawn
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070250681A1 (en) * | 2006-04-10 | 2007-10-25 | International Business Machines Corporation | Independent programmable operation sequence processor for vector processing |
CN111078287A (zh) * | 2019-11-08 | 2020-04-28 | 苏州浪潮智能科技有限公司 | 一种向量运算协处理方法与装置 |
CN111047035A (zh) * | 2019-12-09 | 2020-04-21 | Oppo广东移动通信有限公司 | 神经网络处理器、芯片和电子设备 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112860320A (zh) * | 2021-02-09 | 2021-05-28 | 山东英信计算机技术有限公司 | 基于risc-v指令集进行数据处理的方法、***、设备及介质 |
CN113312303A (zh) * | 2021-04-30 | 2021-08-27 | 展讯通信(上海)有限公司 | 处理器微架构、SoC芯片及低功耗智能设备 |
CN113312303B (zh) * | 2021-04-30 | 2022-10-21 | 展讯通信(上海)有限公司 | 处理器微架构***、SoC芯片及低功耗智能设备 |
CN112988238A (zh) * | 2021-05-06 | 2021-06-18 | 成都启英泰伦科技有限公司 | 一种基于可扩展指令集cpu内核的扩展运算装置及方法 |
CN114138342A (zh) * | 2022-01-25 | 2022-03-04 | 北京大学 | Rocc协处理器接口模型及其自动生成工具和实现方法 |
CN114138342B (zh) * | 2022-01-25 | 2022-04-26 | 北京大学 | Rocc协处理器接口模型及其自动生成工具和实现方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11954036B2 (en) | Prefetch kernels on data-parallel processors | |
CN112130901A (zh) | 基于risc-v的协处理器、数据处理方法及存储介质 | |
CN112306678B (zh) | 一种基于异构众核处理器的算法并行处理方法及*** | |
US9830156B2 (en) | Temporal SIMT execution optimization through elimination of redundant operations | |
EP2542973B1 (en) | Gpu support for garbage collection | |
CN104115093B (zh) | 包括多个处理元件之间的功率和性能平衡的用于能效和节能的方法、装置和*** | |
US10037228B2 (en) | Efficient memory virtualization in multi-threaded processing units | |
US10255228B2 (en) | System and method for performing shaped memory access operations | |
US8205200B2 (en) | Compiler-based scheduling optimization hints for user-level threads | |
CN110032395B (zh) | 用于提高资源利用率的统一寄存器文件 | |
US10310973B2 (en) | Efficient memory virtualization in multi-threaded processing units | |
US20130232322A1 (en) | Uniform load processing for parallel thread sub-sets | |
CN109002659B (zh) | 一种基于超级计算机的流体机械仿真程序优化方法 | |
US20140215192A1 (en) | Heap data management for limited local memory(llm) multi-core processors | |
US20140143524A1 (en) | Information processing apparatus, information processing apparatus control method, and a computer-readable storage medium storing a control program for controlling an information processing apparatus | |
US8387009B2 (en) | Pointer renaming in workqueuing execution model | |
KR20240004361A (ko) | 프로세싱-인-메모리 동시적 프로세싱 시스템 및 방법 | |
Siddique et al. | Lmstr: Local memory store the case for hardware controlled scratchpad memory for general purpose processors | |
CN112306663A (zh) | 一种并行计算加速器及嵌入式*** | |
Atoofian | Approximate cache in GPGPUs | |
EP2731008B1 (en) | Resource contention in multiple cores | |
Kandemir et al. | Locality-aware process scheduling for embedded MPSoCs | |
US20110320781A1 (en) | Dynamic data synchronization in thread-level speculation | |
JP2013134670A (ja) | 情報処理装置及び情報処理方法 | |
Kiani et al. | Rdmke: applying reuse distance analysis to multiple GPU kernel executions |
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 | ||
WW01 | Invention patent application withdrawn after publication | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20201225 |