CN107273098A - 一种优化数据流架构数据传输延迟的方法及其系统 - Google Patents

一种优化数据流架构数据传输延迟的方法及其系统 Download PDF

Info

Publication number
CN107273098A
CN107273098A CN201710304991.6A CN201710304991A CN107273098A CN 107273098 A CN107273098 A CN 107273098A CN 201710304991 A CN201710304991 A CN 201710304991A CN 107273098 A CN107273098 A CN 107273098A
Authority
CN
China
Prior art keywords
node
data
downstream
instruction
anticipation
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
CN201710304991.6A
Other languages
English (en)
Other versions
CN107273098B (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.)
Beijing Zhongke Ruixin Technology Group Co.,Ltd.
Original Assignee
Beijing Zhongke Rui Core Technology 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 Beijing Zhongke Rui Core Technology Co Ltd filed Critical Beijing Zhongke Rui Core Technology Co Ltd
Priority to CN201710304991.6A priority Critical patent/CN107273098B/zh
Publication of CN107273098A publication Critical patent/CN107273098A/zh
Application granted granted Critical
Publication of CN107273098B publication Critical patent/CN107273098B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/38Concurrent instruction execution, e.g. pipeline, look ahead
    • G06F9/3867Concurrent instruction execution, e.g. pipeline, look ahead using instruction pipelines

Abstract

本发明提供一种优化数据流架构数据传输延迟的方法及其系统,其中所述方法包括以下步骤:S1:记录上游节点和下游中每个指令槽对应的历史行为,并根据所述历史行为预测所述下游节点是否可以向所述上游节点提前发射空闲状态信息;S2:若所述下游节点可以向所述上游节点提前发射空闲状态信息,则将节点中的指令槽数据存储到预判发射部件中;所述指令槽数据中包含跳数延迟字段,用于表示上游节点的目标操作数到达下游节点的原操作数最快所需的跳数X;S3:根据所述跳数延迟字段,下游节点在X个周期之后向上游节点发送存储在所述预判发射部件中的指令槽数据。

Description

一种优化数据流架构数据传输延迟的方法及其系统
技术领域
本发明涉及数据传输技术领域,特别涉及一种降低数据传输延迟的方法及其系统。
背景技术
随着计算机体系结构的发展,领域专用的计算机体系结构成为主要发展趋势。在面向特定应用时,专用型结构利用应用特征对结构进行相应的优化,从而更好地发挥出硬件的计算性能。在高性能计算领域,数据流计算是领域专用计算结构的一个重要分支,数据流计算表现出了较好的性能和适用性。数据流指令执行的基本原则是:所有的源操作数都准备好了,并且下游节点有空闲的数据槽可以接收数据,则该指令即可发射到执行单元当中运算执行。在数据流计算模式中,源指令(生产者,上游节点)执行的结果不会写入共享寄存器或共享缓存,而是直接传递给目的指令(消费者,下游节点)。
在传统数据流架构当中,指令之间的数据传递方式如图1所示。在这个例子当中,上游节点PE3 106当中的指令槽109的目的操作数字段111要传递给下游节点PE9 101的指令槽102的源操作数字段110,并且假定上游节点PE3 106的指令槽109当中的源操作数都已经“Ready”。需要经历的正常步骤如下:
步骤101:下游节点PE9 101的指令槽102被选择进入到发射队列Fire 104当中,然后接着就可以进入执行单元执行;
步骤102:下游节点PE9 101的指令槽102的源操作数字段110依赖于上游节点106的指令槽109的目标操作数字段111,指令槽102发射之后,通过网络105通知上游节点106的指令槽109的目标操作数字段111,下游已经“Ready”,可以接收上游节点发送的源操作数数据;
步骤103:上游节点PE3 106收到来自下游节点101的“Ready”信息,因为指令槽109的源操作数早已经“Ready”,所以可以进入到发射队列112当中,然后就可以进入到执行单元116当中执行;
步骤104:上游节点PE3 106的指令槽109当中的指令在执行单元116当中执行结束之后,通过网络117把计算结果发送给下游节点PE9 101的指令槽102的源操作数字段110。
从时间轴118可以看出,最差情况下,上面描述的这些步骤是完全串行的,一环扣一环。使得节点之间传递操作数的延迟较大、效率较低。
发明内容
针对传统数据流结构当中这种依赖于下游节点反馈“Ready”状态位的数据传递机制,本发明的目的在于提供一种优化和降低指令之间数据传输延迟的方法及其系统。
为达上述目的,本发明采取的技术方案为:
一种优化数据流架构数据传输延迟的方法,包括以下步骤:
S1:记录上游节点和下游中每个指令槽对应的历史行为,并根据所述历史行为预测所述下游节点是否可以向所述上游节点提前发射空闲状态信息;
S2:若所述下游节点可以向所述上游节点提前发射空闲状态信息,则将节点中的指令槽数据存储到预判发射部件中;所述指令槽数据中包含跳数延迟字段,用于表示上游节点的目标操作数到达下游节点的原操作数最快所需的跳数X;
S3:根据所述跳数延迟字段,下游节点在X个周期之后向上游节点发送存储在所述预判发射部件中的指令槽数据。
根据本发明提出的优化数据流架构数据传输延迟的方法,所述预判发射部件的内部设置存储深度N,采用先进先出结构存取数据。
根据本发明提出的优化数据流架构数据传输延迟的方法,所述跳数延迟字段是通过节点的坐标静态计算而产生的。
本发明还同时提供一种优化数据流架构数据传输延迟的系统,包括:
预测位,分布在节点的每个指令槽数据中,用于记录上游节点和下游中每个指令槽对应的历史行为,并根据所述历史行为预测所述下游节点是否可以向所述上游节点提前发射空闲状态信息;
跳数延迟字段,分布在节点的每个指令槽数据中,与所述预判发射部件相连,用于表示上游节点的目标操作数到达下游节点的原操作数最快所需的跳数X;
预判发射部件,与所述预测位和所述跳数延迟字段相连,用于当所述预测位预测所述下游节点可以向所述上游节点提前发射空闲状态信息时,存储所述指令槽数据;并在X个周期之后发射存储在其中的指令槽数据。
根据本发明提出的优化数据流架构数据传输延迟的系统,所述预判发射部件的内部设置存储深度N,采用先进先出结构存取数据。
根据本发明提出的优化数据流架构数据传输延迟的系统,所述预测位采用2bit饱和计数器。
根据本发明提出的优化数据流架构数据传输延迟的系统,所述跳数延迟字段是通过节点的坐标静态计算而产生的。
与现有技术相比,本发明提出的方法及其系统能够有效地加快操作数在数据流架构阵列当中的传递效率,降低传输的延迟。
附图说明
图1为传统数据流架构当中指令之间的数据传递过程图;
图2为采用了本发明的提前发射方式之后指令之间的数据传递过程图;
图3为采用了本发明的提前发射方式之后指令之间传递数据的一具体实施例;
图4为传统方式和采用了本发明的提前发射方式的延迟对比图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有付出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明提出一套优化和降低指令之间数据传输延迟的方法及其系统,其核心技术在于非推测提前发射(non-speculative lookaheadfiring selection)模式。在本发明提出的模式当中,下游节点提前确认指令的发射日程,提前把“Ready”信息通知到上游节点,这样可以让下游的等待发射节点和向上游反馈“Ready”甚至包括上游向下游发送数据的路由时间部分重叠,从而提高了整个执行过程的效率和减低了数据传递的延迟。
本发明的系统需要从硬件上增加如下的支持:预测、发射的提前确认和预译码机制。如图2所示。
节点当中的每个指令槽都需要增加对应的预测位用于记录该指令槽对应的历史行为。如果指令槽当中的指令总是源操作数先准备好,需要等待目标操作数字段的“Ready”的话,那么表示在这个指令槽当中,下游节点反馈的“Ready”是这个指令槽能否发射执行的瓶颈。这种情况对应的预测位的结果为“Taken”,反之如果指令槽能否发射执行的瓶颈不是等待下游节点反馈的“Ready”信息的话,预测位的结果为“Non-Taken”。之所以设置预测位,是需要根据该指令槽对应的历史行为决定它将来的需求。后面会进一步分析为什么这里虽然采用了预测位,但是却并不属于推测执行,而是非推测的(non-speculative)。预测位的具体位数,取决于预测器的精度要求,一般推荐采用2bit饱和计数器,一方面硬件开销小,另一方面预测精度也有一定的保障。
节点当中的发射选择策略相比于传统的方式需要做出改进。在传统的数据流结构当中,节点当中的指令槽,如果处于“Ready to fire”的状态,也就是源操作数和目标操作数字段都已经“Ready”的状态,那么就等待被选择发射执行即可。在本发明当中,需要知道一个指令槽如果处于“Ready to fire”的状态,最快几个时钟周期之后可以被发射执行。比如图2所示,针对下游节点PE9 201,为了实现这样的功能,在原来传统结构的发射选择部件205的前面增加了预判发射部件PreFireQ204。预判发射部件204内部设置一定的深度N,采用FIFO的结构,先进先出。那些将要被发射的指令从预判发射部件204的FIFO当中被顺序取出。所以,发射预判部件204的深度N就决定了这个节点可以对指令的发射预判N个Cycle。因为只有那些被发射放入到预判发射部件当中的指令一定会在0~M个Cycle之后被发射执行(最快是0~N,因为有些指令所需要的执行周期不止需要1个Cycle,并且还考虑到有阻塞型的计算部件,所以最好情况是进入到预判发射部件之后,1个Cycle都不浪费就一步一步进入到执行单元当中)。
节点当中的每个指令槽都需要增加“Hop Delay”字段,指令槽的每个源操作数对应具有各自的“Hop Delay”字段。该字段的含义表示源操作数字段所在的PE和它所依赖的上游节点之间的距离,即上游节点的目标操作数最快需要经过多少跳数到达下游节点的源操作数字段。该字段可以通过节点的坐标静态计算产生,为了不影响节点内流水线的效率和延迟,在指令被写入到节点之前,增加一个预译码部件226,用于静态计算每条指令的源操作数字段对应的“Hop Delay”字段,存储该字段所需要的位数和数值取决于数据流计算阵列当中的节点分布、节点数和路由方式。如图3当中所示的结构,该数据流结构当中包括16个节点301-316,采用4行4列的结构(图中的PE是processing element的缩写,表示数据流结构当中的处理和计算核心)。路由假定采用最简单的XY路由。那么如果节点313当中有某一条指令有两个源操作数字段,分别来自节点301和节点303当中的指令槽的目标操作数字段,分别如图中的实线箭头和虚线箭头所示,数据从节点303传递到节点313的话,最快需要5跳到达;数据从节点301传递到节点313的话,最快需要3跳到达。所以,这条指令的两个源操作数对应的“Hop Delay”字段的数值分别是3和5。因为在数据流架构当中,指令当中的操作数字段都包含了静态映射的坐标信息,所以在指令真正执行之前,就可以在预译码的阶段计算出每个源操作数的“Hop Delay”信息。
以图3为例,假定在数据流结构每个节点当中的预判发射部件PreFireQ的深度是5,如317和318所示,每个节点都有自己的预判发射部件PreFireQ,每个PreFireQ有5项,每一项的索引分别是1~5。设置队尾指针,指向下一个要进入预判发射部件PreFireQ的请求写入的位置。每次一条指令要发射的时候,都是从第1项被发射。每次有一条指令被发射出去之后,整个预判发射部件PreFireQ进行移位操作,向索引为1的位置移动,如图3中所示就是向下移动。图3当中338表示了在节点313当中一条指令进入到预判发射部件PreFireQ的处理过程。
在本实施例当中,假定节点313当中的一个指令槽具有2个源操作数字段和1个目标操作数字段。节点313的两个源操作数分别来自节点301和节点303,根据前面的解释,来自节点303的源操作数的”Hop Delay“是5,来自节点301的源操作数的“Hop Delay“是3。
那么在节点313当中,指令的处理过程如下面的步骤所示:
步骤301:节点313当中的这条指令已经处于“Ready“状态,即本次计算所得的源操作数已经准备好,并且目标操作数也收到了来自下游节点的”Ready“状态;那么该条指令进入到节点313的PreFireQ当中索引等于5的位置,如预判发射部件的指令槽322所示。(注:本实施例假定预判发射部件PreFireQ的前4项已经被占满,如果前面为空,那么该指令进入的位置不是322)。
步骤302:如图中预判发射部件PreFireQ的322所示,需要保存的内容为:指令对应在该节点当中的instruction index,本例子当中是27;每个源操作数对应的”Hop Delay“,在本实施例当中分别是3和5。
步骤303:因为指令进入到预判发射部件PreFireQ的第5项,表明这条指令将在5个Cycle之后被发射到节点313的发射部件和执行单元。此时源操作数1的“HopDelay“等于指令在预判发射部件PreFireQ当中所处的位置5,所以,从节点313向节点303反馈该源操作数字段的”Ready“信息。表明,5个Cycle之后,源操作数1字段322将会空闲出来,同时节点303收到了“Ready“信息,可以在5个Cycle之后就向节点303发送下一次的数据。这样做可以让节点303比传统的方式提前50%的时间收到来自下游节点的“Ready”信息,从而减少了操作数的传输延迟。
步骤304:对于节点313当中的instruction index=27的这条指令的另外一个源操作数字段,也是同样的道理,随着预判发射部件PreFireQ当中的指令被发射出去,该指令将在2个Cycle之后进入到PreFireQ的第3项329当中,此时源操作数字段0的“Hop Delay”等于3,那么节点313向节点301发送来自下游的”Ready“信息。同样,节点301收到下游节点的“Ready“信息的延迟将比原来快50%的时间。
图4表示了传统方式和“non-speculative Lookahead”方式的对比。图中左边401表示了采用传统方式的延迟,图中右边402表示了采用“non-speculative Lookahead”方式的延迟。图中表示的步骤没有考虑网络发生拥堵的情况,示意的是在一般理想情况下的传输情况,如果发生了网络拥堵,实际情况下会比图中表示的延迟更大,取决于拥堵造成的延迟Cycle数的多少。
如图4,在传统方式中,如419所示,PE(3,0)(即图3的313)在Cycle N+11的时候才能收到来自节点PE(0,2)(即图3的303)和PE(0,0)(即图3的301)的2个源操作数,才能开始启动下一次的发射。但是如果采用“non-speculative Lookahead”方式的话,如432所示,PE(3,0)(即图3的313)在Cycle N+7的时候,就可以收到来自节点PE(0,2)(即图3的303)和PE(0,0)(即图3的301)的2个源操作数,就可以开始启动下一次的发射。图4当中两边的N都是相等的情况下。
可以看出本发明提出的方法和机制有效地加快了操作数在数据流架构阵列当中的传递效率,降低了传输的延迟。
本实施例当中给出的例子给每个节点的预判发射部件PreFireQ只设置了5项,如果在硬件资源的允许的条件下,预判发射部件PreFireQ的项数可以增加的话,那么可以掩盖更多的数据传输延迟。如图3的例子所示,如果预判发射部件PreFireQ的项数等于10的话,指令instruction index=27在进入到PreFireQ的第10项的时候,就可以向节点303发出来自下游节点的“Ready”信息。表示在10个Cycle之后,节点313的这条指令发射,同时来自上游节点303的源操作数也就位,就可以开启下一轮的发射等待和计算。具体的实现方式取决于硬件和性能之间的平衡。
之所以把本发明提出的机制成为“non-speculative”,是因为上游节点仍然需要确认收到来自下游的“Ready”信息才能将数据送出,不存在speculative的情况发生。之所以增加了预测位,是为了筛选出那些需要被优化的指令进行,针对那些本来下游“Ready”就不是瓶颈的指令来说,不需要采用这种优化方式,不会浪费预判发射部件当中资源。
本领域普通技术人员可以理解:附图只是一个实施例的示意图,附图中的模块或流程并不一定是实施本发明所必须的。
本领域普通技术人员可以理解:实施例中的装置中的模块可以按照实施例描述分布于实施例的装置中,也可以进行相应变化位于不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围。

Claims (7)

1.一种优化数据流架构数据传输延迟的方法,其特征在于,包括以下步骤:
S1:记录上游节点和下游中每个指令槽对应的历史行为,并根据所述历史行为预测所述下游节点是否可以向所述上游节点提前发射空闲状态信息;
S2:若所述下游节点可以向所述上游节点提前发射空闲状态信息,则将节点中的指令槽数据存储到预判发射部件中;所述指令槽数据中包含跳数延迟字段,用于表示上游节点的目标操作数到达下游节点的原操作数最快所需的跳数X;
S3:根据所述跳数延迟字段,下游节点在X个周期之后向上游节点发送存储在所述预判发射部件中的指令槽数据。
2.根据权利要求1所述的优化数据流架构数据传输延迟的方法,其特征在于,所述预判发射部件的内部设置存储深度N,采用先进先出结构存取数据。
3.根据权利要求1或2所述的优化数据流架构数据传输延迟的方法,其特征在于,所述跳数延迟字段是通过节点的坐标静态计算而产生的。
4.一种优化数据流架构数据传输延迟的系统,其特征在于,包括:
预测位,分布在节点的每个指令槽数据中,用于记录上游节点和下游中每个指令槽对应的历史行为,并根据所述历史行为预测所述下游节点是否可以向所述上游节点提前发射空闲状态信息;
跳数延迟字段,分布在节点的每个指令槽数据中,与所述预判发射部件相连,用于表示上游节点的目标操作数到达下游节点的原操作数最快所需的跳数X;
预判发射部件,与所述预测位和所述跳数延迟字段相连,用于当所述预测位预测所述下游节点可以向所述上游节点提前发射空闲状态信息时,存储所述指令槽数据;并在X个周期之后发射存储在其中的指令槽数据。
5.根据权利要求4所述的优化数据流架构数据传输延迟的系统,其特征在于,所述预判发射部件的内部设置存储深度N,采用先进先出结构存取数据。
6.根据权利要求4所述的优化数据流架构数据传输延迟的系统,其特征在于,所述预测位采用2bit饱和计数器。
7.根据权利要求4至6中任一项所述的优化数据流架构数据传输延迟的系统,其特征在于,所述跳数延迟字段是通过节点的坐标静态计算而产生的。
CN201710304991.6A 2017-05-03 2017-05-03 一种优化数据流架构数据传输延迟的方法及其系统 Active CN107273098B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710304991.6A CN107273098B (zh) 2017-05-03 2017-05-03 一种优化数据流架构数据传输延迟的方法及其系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710304991.6A CN107273098B (zh) 2017-05-03 2017-05-03 一种优化数据流架构数据传输延迟的方法及其系统

Publications (2)

Publication Number Publication Date
CN107273098A true CN107273098A (zh) 2017-10-20
CN107273098B CN107273098B (zh) 2020-07-31

Family

ID=60073703

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710304991.6A Active CN107273098B (zh) 2017-05-03 2017-05-03 一种优化数据流架构数据传输延迟的方法及其系统

Country Status (1)

Country Link
CN (1) CN107273098B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113297198A (zh) * 2020-06-10 2021-08-24 阿里巴巴集团控股有限公司 数据库索引优化方法、分布式数据库查询方法及装置

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101013401A (zh) * 2006-02-03 2007-08-08 国际商业机器公司 用于预取数据线的方法和处理器
CN101237374A (zh) * 2007-02-02 2008-08-06 北京三星通信技术研究有限公司 自适应的多跳时分复用调度方法
CN102378382A (zh) * 2010-08-10 2012-03-14 华为技术有限公司 一种数据流的调度方法、设备和系统
CN102591621A (zh) * 2002-12-27 2012-07-18 英特尔公司 使用计算历史进行预测
CN102857483A (zh) * 2011-06-30 2013-01-02 国际商业机器公司 预取数据的方法、设备和装置
CN104156197A (zh) * 2013-06-10 2014-11-19 威盛电子股份有限公司 微处理器以及微处理器操作方法
US9081501B2 (en) * 2010-01-08 2015-07-14 International Business Machines Corporation Multi-petascale highly efficient parallel supercomputer
CN105760339A (zh) * 2014-10-31 2016-07-13 德州仪器公司 实现线减少和物理拥堵最小化的多核总线架构

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102591621A (zh) * 2002-12-27 2012-07-18 英特尔公司 使用计算历史进行预测
CN101013401A (zh) * 2006-02-03 2007-08-08 国际商业机器公司 用于预取数据线的方法和处理器
CN101237374A (zh) * 2007-02-02 2008-08-06 北京三星通信技术研究有限公司 自适应的多跳时分复用调度方法
US9081501B2 (en) * 2010-01-08 2015-07-14 International Business Machines Corporation Multi-petascale highly efficient parallel supercomputer
CN102378382A (zh) * 2010-08-10 2012-03-14 华为技术有限公司 一种数据流的调度方法、设备和系统
CN102857483A (zh) * 2011-06-30 2013-01-02 国际商业机器公司 预取数据的方法、设备和装置
CN104156197A (zh) * 2013-06-10 2014-11-19 威盛电子股份有限公司 微处理器以及微处理器操作方法
CN105760339A (zh) * 2014-10-31 2016-07-13 德州仪器公司 实现线减少和物理拥堵最小化的多核总线架构

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113297198A (zh) * 2020-06-10 2021-08-24 阿里巴巴集团控股有限公司 数据库索引优化方法、分布式数据库查询方法及装置
CN113297198B (zh) * 2020-06-10 2022-04-29 阿里巴巴集团控股有限公司 数据库索引优化方法、分布式数据库查询方法及装置

Also Published As

Publication number Publication date
CN107273098B (zh) 2020-07-31

Similar Documents

Publication Publication Date Title
Cortadella et al. Synthesis of synchronous elastic architectures
US11846974B2 (en) Arithmetic logic unit layout for a processor
CN100557570C (zh) 多处理器系统
KR100690225B1 (ko) 데이터 처리기 시스템 및 그룹화를 이용한 명령 시스템
CN100557594C (zh) 数据处理器的状态引擎
CN111512292A (zh) 用于可配置空间加速器中的非结构化数据流的装置、方法和系统
CN107810479A (zh) 用于处理器控制传送的目标位置的确定
US10564929B2 (en) Communication between dataflow processing units and memories
CN101373426A (zh) 用于执行simd运算的数据处理系统及其方法
WO2021034587A1 (en) Multiple output fusion for operations performed in a multi-dimensional array of processing units
US20140149715A1 (en) Scalable and programmable computer systems
US8693615B2 (en) RAM-based event counters using transposition
US10659396B2 (en) Joining data within a reconfigurable fabric
US7107399B2 (en) Scalable memory
US20180212894A1 (en) Fork transfer of data between multiple agents within a reconfigurable fabric
EP1710691A1 (en) MAC/MUL unit
US8904334B2 (en) Footprint-based optimization performed simultaneously with other steps
CN107273098A (zh) 一种优化数据流架构数据传输延迟的方法及其系统
Gill et al. A low-latency adaptive asynchronous interconnection network using bi-modal router nodes
JP2008269450A (ja) プロセッサ及びプリフェッチ制御方法
JP2875864B2 (ja) パイプライン処理方式
CN112181497B (zh) 一种分支目标预测地址在流水线中的传递方法和装置
Olliaro et al. Skipping and Fetching: Insights on Non-conventional Product-Form Solutions
Xue et al. Analysis of scheduled latency insensitive systems with periodic clock calculus
Carroll et al. A queuing model for CPU functional unit and issue queue configuration

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
CP03 Change of name, title or address

Address after: 100094 room 135, 1st floor, building 15, Chuangke Town, Wenquan Town, Haidian District, Beijing

Patentee after: Beijing Zhongke Ruixin Technology Group Co.,Ltd.

Address before: 1 wensong Road, Zhongguancun environmental protection park, Beiqing Road, Haidian District, Beijing 100094

Patentee before: SMARTCORE (BEIJING) Co.,Ltd.

CP03 Change of name, title or address