CN115204086A - 片上网络仿真模型及动态路径规划方法、装置、多核芯片 - Google Patents

片上网络仿真模型及动态路径规划方法、装置、多核芯片 Download PDF

Info

Publication number
CN115204086A
CN115204086A CN202110402725.3A CN202110402725A CN115204086A CN 115204086 A CN115204086 A CN 115204086A CN 202110402725 A CN202110402725 A CN 202110402725A CN 115204086 A CN115204086 A CN 115204086A
Authority
CN
China
Prior art keywords
path
ports
port
direct connection
physical
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.)
Pending
Application number
CN202110402725.3A
Other languages
English (en)
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 Simm Computing Technology Co ltd
Original Assignee
Beijing Simm Computing 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 Simm Computing Technology Co ltd filed Critical Beijing Simm Computing Technology Co ltd
Priority to CN202110402725.3A priority Critical patent/CN115204086A/zh
Publication of CN115204086A publication Critical patent/CN115204086A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/36Circuit design at the analogue level
    • G06F30/367Design verification, e.g. using simulation, simulation program with integrated circuit emphasis [SPICE], direct methods or relaxation methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本公开属于程序编译技术领域,提供一种片上网络仿真模型及动态路径规划方法、装置、多核芯片,片上网络包括多个端口,方法包括:建立连接特性表,其记载有任意两个端口之间的物理路径直连信息;建立路径状态表,其动态记载有任意两个端口之间的物理直连路径占用信息;根据连接特性表,确定出从数据传输起始端口到数据传输终止端口的所有可能路径;根据路径状态表,从所有可能路径中确定为空闲状态的所有可选路径;从所有可选路径中按预设规则选取出目标路径。本公开简单灵活地实现动态路径规划,有效利用NoC,减少数据堵塞,提升路由效率,避免数据传输出现死锁等问题,节省路由规划和仿真的资源,可高效率地应用于芯片设计和程序编译中。

Description

片上网络仿真模型及动态路径规划方法、装置、多核芯片
技术领域
本公开属于程序编译技术领域,具体涉及一种片上网络仿真模型及动态路径规划方法、装置、多核芯片。
背景技术
在神经网络计算领域的多(众)核芯片设计之前,通常会建立芯片各组成模块的仿真模型,以进行芯片的功能验证、性能评估等工作。芯片实物生产出来,进入应用阶段后,每次编译器编译神经网络计算程序过程中,需要实时评估程序的效率,进而优化生成的神经网络计算程序。这就要求建立一个准确而高效的神经网络芯片的仿真器。
一般而言,在多(众)核芯片中,核间通信以及核与其他模块之间的通信,都是通过片上网络(Network on Chip,NoC)进行。这样,会建立一个NoC仿真模型,然后根据仿真模型,进行数据传输的路径选择和优化,即路由方法。对于不同的NoC仿真模型,会有不同的路由方法,同时效果也差异巨大。
通常的NoC仿真模型及对应的路由方法如下:
一、精确的软件模拟电路的NoC模型:
该模型侧重精确,会将NoC的电路,用软件模拟的方式表达出来,从而能够比较准确的评估NoC的性能,包括数据的精确延时等性能。在进行路径选择时,根据实际电路的运行情况,按电路的工作状态,建立对应的静态路由表,完成路径选择。但是此方法使得软件设计复杂,仿真运行时间长,对运行仿真程序的机器要求高。
二、粗糙的功能模块表达的NoC模型:
该模型侧重高效,会将NoC看成一具有某些行为特性的功能模块,仿真结果只表达NoC的各接口的行为,从而使仿真速度快,对运行仿真程序的机器要求低。此方法由于仿真模型过于粗糙,无法表达NoC的实际特性,无法得到精确的时序信息,无法仿真NoC的拥塞状况等情况,所以几乎不能做进行路径的选择和优化。
综上,对于精确的软件模拟电路的NoC模型,在进行路由规划仿真时,只能建立对应的静态路由表,无法根据路径当前占用状态对规划路径进行实时更新,并且,其仿真程序复杂,运行速度慢,耗费资源多,成本高;对于粗糙的功能模块表达的NoC模型,几乎无法进行动态路径选择和优化,从而无法准确评估芯片的性能,无法实现程序的优化。
发明内容
本公开旨在至少解决现有技术中存在的问题之一,提供一种片上网络仿真模型及动态路径规划方法、装置、多核芯片。
本公开的一个方面,提供一种片上网络仿真模型的动态路径规划方法,所述片上网络包括多个端口,所述方法包括:
建立各所述端口的连接特性的连接特性表,所述连接特性表记载有任意两个所述端口之间的物理路径直连信息;
建立各所述端口的路径状态的路径状态表,所述路径状态表动态记载有任意两个所述端口之间的物理直连路径占用信息;
根据所述连接特性表,确定出从数据传输起始端口到数据传输终止端口的所有可能路径,其中,每条所述可能路径中,任意相邻两个端口之间均存在沿数据传输方向的物理直连路径;
根据所述路径状态表,从所述所有可能路径中确定出为空闲状态的所有可选路径;
从所述所有可选路径中按照预设规则选取一条目标路径,以作为所述数据传输起始端口到所述数据传输终止端口的传输路径。
在一些实施方式中,所述建立各所述端口的连接特性的连接特性表,所述连接特性表记载有任意两个所述端口之间的物理路径直连信息,包括:
若所述任意两个端口之间存在物理直连路径,则将该两个端口的物理路径直连信息设置为第一预设值;
若所述任意两个端口之间不存在物理直连路径,则将该两个端口的物理路径直连信息设置为第二预设值。
在一些实施方式中,所述建立各所述端口的路径状态的路径状态表,所述路径状态表动态记载有任意两个所述端口之间的物理直连路径占用信息,包括:
若所述任意两个端口之间不存在物理直连路径或虽存在物理直连路径但其为空闲状态,则将该两个端口的物理直连路径占用信息设置为第三预设值;
若所述任意两个端口之间存在物理直连路径且为占用状态,则将该两个端口的物理直连路径占用信息设置为第四预设值。
在一些实施方式中,所述所有可能路径组成可能路径表,所述根据所述路径状态表,从所述所有可能路径中确定出为空闲状态的所有可选路径,包括:
根据所述路径状态表,建立可能路径状态表,所述可能路径状态表对应于所述可能路径表;
根据所述可能路径表和所述可能路径状态表,确定出所述所有可选路径。
在一些实施方式中,所述根据所述可能路径表和所述可能路径状态表,确定出所述所有可选路径,包括:
分别将所述可能路径表和所述可能路径状态表中的对应项进行第一运算得到各所述对应项的第一运算结果,并对同一可能路径中的各所述第一运算结果进行第二运算得到第二运算结果,以根据所述第二运算结果确定所述所有可选路径。
在一些实施方式中,所述第一预设值和所述第四预设值为非零值,所述第二预设值和所述第三预设值为零值;
所述分别将所述可能路径表和所述可能路径状态表中的对应项进行第一运算得到各所述对应项的第一运算结果,并对同一可能路径中的各所述第一运算结果进行第二运算得到第二运算结果,以根据所述第二运算结果确定所述所有可选路径,包括:
分别将所述可能路径表和所述可能路径状态表中的对应项进行乘运算得到各所述对应项的第一运算结果,并将所述同一可能路径中的各第一运算结果进行累加,得到各条可能路径对应的各第二运算结果;
选取所述第二运算结果为零的可能路径作为所述可选路径。
在一些实施方式中,所述预设规则包括最短路径规则、随机选取路径规则或顺序选取路径规则。
本公开的另一个方面,提供一种片上网络仿真模型的路径规划装置,所述片上网络包括多个端口,所述装置包括:
第一建立模块,用于建立各所述端口的连接特性的连接特性表,所述连接特性表记载有任意两个所述端口之间的物理路径直连信息;
第二建立模块,用于建立各所述端口的路径状态的路径状态表,所述路径状态表动态记载有任意两个所述端口之间的物理直连路径占用信息;
第一确定模块,用于根据所述连接特性表,确定出从数据传输起始端口到数据传输终止端口的所有可能路径,其中,每条所述可能路径中,任意相邻两个端口之间均存在沿数据传输方向的物理直连路径;
第二确定模块,用于根据所述路径状态表,从所述所有可能路径中确定出为空闲状态的所有可选路径;
选取模块,用于从所述所有可选路径中按照预设规则选取一条目标路径,以作为所述数据传输起始端口到所述数据传输终止端口的传输路径。
在一些实施方式中,所述第一建立模块,用于建立各所述端口的连接特性的连接特性表,所述连接特性表记载有任意两个所述端口之间的物理路径直连信息,包括:
所述第一建立模块具体用于:
若所述任意两个端口之间存在物理直连路径,则将该两个端口的物理路径直连信息设置为第一预设值;
若所述任意两个端口之间不存在物理直连路径,则将该两个端口的物理路径直连信息设置为第二预设值。
在一些实施方式中,所述第二建立模块,用于建立各所述端口的路径状态的路径状态表,所述路径状态表动态记载有任意两个所述端口之间的物理直连路径占用信息,包括:
所述第二建立模块具体用于:
若所述任意两个端口之间不存在物理直连路径或虽存在物理直连路径但其为空闲状态,则将该两个端口的物理直连路径占用信息设置为第三预设值;
若所述任意两个端口之间存在物理直连路径且为占用状态,则将该两个端口的物理直连路径占用信息设置为第四预设值。
在一些实施方式中,所述第一确定模块还用于将所述所有可能路径组成可能路径表,所述第二确定模块,用于根据所述路径状态表,从所述所有可能路径中确定出为空闲状态的所有可选路径,包括:
所述第二确定模块用于:
根据所述路径状态表,建立可能路径状态表,所述可能路径状态表对应于所述可能路径表;
根据所述可能路径表和所述可能路径状态表,确定出所述所有可选路径。
在一些实施方式中,所述第二确定模块用于,根据所述可能路径表和所述可能路径状态表,确定出所述所有可选路径,包括:
所述第二确定模块用于:
分别将所述可能路径表和所述可能路径状态表中的对应项进行第一运算得到各所述对应项的第一运算结果,并对同一可能路径中的各所述第一运算结果进行第二运算得到第二运算结果,以根据所述第二运算结果确定所述所有可选路径。
在一些实施方式中,所述第一建立模块还用于将所述第一预设值设置为非零值,将所述第二预设值设置为零值;所述第二建立模块还用于将所述第三预设值设置为零值,将所述第四预设值设置为非零值;
所述第二确定模块用于,分别将所述可能路径表和所述可能路径状态表中的对应项进行第一运算得到各所述对应项的第一运算结果,并对同一可能路径中的各所述第一运算结果进行第二运算得到第二运算结果,以根据所述第二运算结果确定所述所有可选路径,包括:
所述第二确定模块具体用于:
分别将所述可能路径表和所述可能路径状态表中的对应项进行乘运算得到各所述对应项的第一运算结果,并将所述同一可能路径中的各第一运算结果进行累加,得到各条可能路径对应的各第二运算结果;
选取所述第二运算结果为零的可能路径作为所述可选路径。
在一些实施方式中,所述选取模块,用于从所述所有可选路径中按照预设规则选取一条目标路径,以作为所述数据传输起始端口到所述数据传输终止端口的传输路径,包括:
所述选取模块具体用于:
从所述所有可选路径中按照最短路径规则、随机选取路径规则或顺序选取路径规则选取一条目标路径。
本公开的另一个方面,提供一种片上网络仿真模型,所述片上网络仿真模型采用前文记载的所述的方法;或,
所述片上网络仿真模型包括前文记载的所述的装置。
本公开的另一个方面,提供一种多核芯片,包括至少一个计算核组,所述芯片用于执行前文记载的所述的方法;或,
所述芯片包括前文记载的所述的装置。
本公开的另一个方面,提供一种电子设备,包括:
一个或多个处理器;
存储单元,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,能使得所述一个或多个处理器实现根据前文记载的所述的方法。
本公开的另一个方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时能实现根据前文记载的所述的方法。
本公开的片上网络仿真模型及动态路径规划方法及装置、多核芯片,根据建立的连接特性表和路径状态表,能简单灵活地实现动态路径规划,有效利用NoC,减少了数据的堵塞,提升了路由的效率;算法实现简单,仿真计算量小,大大节省了路由规划和仿真的资源;还能避免数据传输中出现死锁等问题,提升路径的可靠性;在芯片设计中,还能够根据设计人员对NoC的调整,快速评估芯片的性能,及时作出反馈,指导芯片的设计和性能的优化,提升芯片运行程序编译的效率,提升神经网络编译器自动编译程序的效率,降低对运行仿真程序的硬件要求,节省成本。
附图说明
图1为本公开一实施例的电子设备的组成示意框图;
图2为本公开另一实施例的片上网络仿真模型的动态路径规划方法的流程图;
图3为本公开另一实施例的NoC仿真模型的示意图;
图4为本公开另一实施例的NoC仿真模型的示意图;
图5为本公开另一实施例的片上网络仿真模型的路径规划装置的示意图。
具体实施方式
为使本领域技术人员更好地理解本公开的技术方案,下面结合附图和具体实施方式对本公开作进一步详细描述。
首先,参照图1来描述用于实现本公开实施例的装置及方法的示例电子设备。
如图1所示,电子设备200包括一个或多个处理器210、一个或多个存储装置220、一个或多个输入装置230、一个或多个输出装置240等,这些组件通过总线系统250和/或其他形式的连接机构互连。应当注意,图1所示的电子设备的组件和结构只是示例性的,而非限制性的,根据需要,电子设备也可以具有其他组件和结构。
处理器210可以是由多(众)核架构的芯片组成的神经网络处理器,也可以是单独的中央处理单元(CPU),或者,也可以是中央处理单元+多核神经网络处理器阵列或者具有数据处理能力和/或指令执行能力的其他形式的处理单元,并且可以控制电子设备200中的其他组件以执行期望的功能。
存储装置220可以包括一个或多个计算机程序产品,所述计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。所述易失性存储器例如可以包括随机存取存储器(RAM)和/或高速缓冲存储器(cache)等。所述非易失性存储器例如可以包括只读存储器(ROM)、硬盘、闪存等。在所述计算机可读存储介质上可以存储一个或多个计算机程序指令,处理器可以运行所述程序指令,以实现下文所述的本公开实施例中(由处理器实现)的客户端功能以及/或者其他期望的功能。在所述计算机可读存储介质中还可以存储各种应用程序和各种数据,例如,所述应用程序使用和/或产生的各种数据等。
输入装置230可以是用户用来输入指令的装置,并且可以包括键盘、鼠标、麦克风和触摸屏等中的一个或多个。
输出装置240可以向外部(例如用户)输出各种信息(例如图像或声音),并且可以包括显示器、扬声器等中的一个或多个。
下面,将参考图2描述根据本公开一实施例的片上网络仿真模型的动态路径规划方法,该动态路径规划方法,是指在进行路径规划时,根据当前各条路径的繁忙状况,从若干条可选路径中依照某种预设规则,选取一条目标路径,作为最终的传输路径。
示例性的,如图2所示,一种片上网络仿真模型的动态路径规划方法S100,其中,片上网络包括多个端口,方法S100包括:
S110、建立各所述端口的连接特性的连接特性表,所述连接特性表记载有任意两个所述端口之间的物理路径直连信息。
示例性的,一并结合图3,在本步骤中,片上网络包括N个端口(Port),即端口P1至端口PN,每一个端口都可以同时实现输入和输出。在某一个传输方向上,任意两个端口之间要么不存在物理直连路径,要么只存在一条物理直连路径,但是,任意两个端口之间的间接物理连接路径可能存在有多条,也就是说,任意两个端口之间,途经其他端口的连接路径可能存在有多条。在片上网络包括N个端口P1至PN时,建立能够表示各个端口的连接特性的连接特性表,如表1所示。
如表1所示,连接特性表中记载有任意一个端口PX到另外任意一个端口PY的物理路径直连信息LXY,该物理路径直连信息LXY表示从端口PX到端口PY是否存在物理直连路径。例如,L12表示从端口P1到端口P2是否存在物理直连路径,L21表示从端口P2到端口P1是否存在物理直连路径,L1N表示从端口P1到端口PN是否存在物理直连路径,LN1表示从端口PN到端口P1是否存在物理直连路径,等等。
表1
Figure BDA0003020942240000091
需要说明的是,在连接特性表中,任意一个端口到其他端口的物理路径直连信息,可以按行排列,也可以按列排列,本领域技术人员可以根据实际需要进行选择,本实施例对此并不限制。
需要说明的是,根据连接特性表,还可以建立相应的静态路由表,以记载各个端口之间的路由信息。
S120、建立各所述端口的路径状态的路径状态表,所述路径状态表动态记载有任意两个所述端口之间的物理直连路径占用信息。
示例性的,在本步骤中,片上网络包括N个端口P1至PN,建立能够表示各个端口的路径状态的路径状态表,如表2所示:
表2
Figure BDA0003020942240000092
如表2所示,路径状态表中动态记载有任意一个端口PX到另外任意一个端口PY的物理直连路径占用信息SXY,该物理直连路径占用信息SXY表示当前时刻从端口PX到端口PY的物理直连路径是否被占用。例如,S12表示当前时刻从端口P1到端口P2的物理直连路径是否被占用,S21表示当前时刻从端口P2到端口P1的物理直连路径是否被占用,S1N表示当前时刻从端口P1到端口PN的物理直连路径是否被占用,SN1表示当前时刻从端口PN到端口P1的物理直连路径是否被占用,等等。
需要说明的是,路径动态表是一张动态表格,它会在不同的时刻,根据任意两个端口之间的物理直连路径被占用情况对表格内容进行实时更新。另外,在路径动态表中,任意一个端口到其他端口的物理直连路径占用信息,可以按行排列,也可以按列排列,本领域技术人员可以根据实际需要进行选择,本实施例对此并不限制。
S130、根据所述连接特性表,确定出从数据传输起始端口到数据传输终止端口的所有可能路径,其中,每条所述可能路径中,任意相邻两个端口之间均存在沿数据传输方向的物理直连路径。
具体地,在本步骤中,当数据传输起始端口为端口PX,数据传输终止端口为端口PY时,根据连接特性表,确定出从端口PX到端口PY的所有可能路径,其中,每条可能路径中,任意相邻两个端口之间均存在沿数据传输方向的物理直连路径,也就是说,每条可能路径途经的所有端口,均与其沿数据传输方向上相邻的端口之间存在物理直连路径。
示例性的,当数据传输起始端口为端口P1、数据传输终止端口为端口P4时,根据连接特性表,查找出的从端口P1到端口P4的所有可能路径可以是:P1→P3→P4,P1→P2→P3→P4,P1→P2→P4,其中,端口P1与端口P3之间存在从端口P1到端口P3的物理直连路径,端口P3与端口P4之间存在从端口P3到端口P4的物理直连路径,端口P1与端口P2之间存在从端口P1到端口P2的物理直连路径,端口P2与端口P3之间存在从端口P2到端口P3的物理直连路径,端口P2与端口P4之间存在从端口P2到端口P4的物理直连路径。
S140、根据所述路径状态表,从所述所有可能路径中确定出为空闲状态的所有可选路径。
具体地,在本步骤中,由于各条可能路径中可能会存在某条物理直连路径当前被占用即处于忙状态的情况,从而导致对应的可能路径当前不可用,因此,需要从所有可能路径中,确定出当前可用的各条可能路径即当前处于空闲状态的所有可选路径。在从所有可能路径中确定出为空闲状态的所有可选路径时,可以根据路径状态表当前记载的任意两个端口之间的物理直连路径占用信息,分别确定出任意相邻两个端口之间沿数据传输方向的物理直连路径当前为空闲状态的各条可选路径。
示例性的,在数据传输起始端口P1到数据传输终止端口P4的所有可能路径包括P1→P3→P4、P1→P2→P3→P4及P1→P2→P4时,若根据路径状态表当前记载的任意两个端口之间的物理直连路径占用信息,只有端口P2到端口P3的物理直连路径被占用即处于忙状态,端口P1到端口P3的物理直连路径、端口P3到端口P4的物理直连路径、端口P1到端口P2的物理直连路径、端口P2到端口P4的物理直连路径均处于空闲状态,则确定出的当前为空闲状态的所有可选路径分别为P1→P3→P4及P1→P2→P4
S150、从所述所有可选路径中按照预设规则选取一条目标路径,以作为所述数据传输起始端口到所述数据传输终止端口的传输路径。
具体地,在本步骤中,当数据传输起始端口为端口PX,数据传输终止端口为端口PY时,从端口PX到端口PY的所有可选路径中,按照预设规则选取出一条目标路径,作为端口PX到端口PY的传输路径。
示例性的,在数据传输起始端口P1到数据传输终止端口P4的所有可选路径包括P1→P3→P4及P1→P2→P4时,从可选路径P1→P3→P4和P1→P2→P4中按照预设规则选取出一条目标路径,作为端口P1到端口P3的传输路径,选取出的目标路径可以是P1→P3→P4,也可以是P1→P2→P4
本实施例的片上网络仿真模型的动态路径规划方法,根据建立的连接特性表和路径状态表,能简单灵活地实现动态路径规划,有效利用NoC,减少了数据的堵塞,提升了路由的效率;算法实现简单,仿真计算量小,大大节省了路由规划和仿真的资源;还能避免数据传输中出现死锁等问题,提升路径的可靠性;在芯片设计中,还能够根据设计人员对NoC的调整,快速评估芯片的性能,及时作出反馈,指导芯片的设计和性能的优化,提升芯片运行程序编译的效率,提升神经网络编译器自动编译程序的效率,降低对运行仿真程序的硬件要求,节省成本。
示例性的,所述建立各所述端口的连接特性的连接特性表,所述连接特性表记载有任意两个所述端口之间的物理路径直连信息,包括:
若所述任意两个端口之间存在物理直连路径,则将该两个端口的物理路径直连信息设置为第一预设值。该第一预设值可以是数据在该两个端口之间直接传输时所需的时钟数,即时延(Latency),也可以是根据实际需要预先设置的其他值,本领域技术人员可以按需进行选择,本实施例对此并不限制。若所述任意两个端口之间不存在物理直连路径,则将该两个端口的物理路径直连信息设置为第二预设值。该第二预设值可以是与第一预设值不同的任一值,本领域技术人员可以按需进行设置,本实施例对此并不限制。
具体地,若从任意一个端口PX到另外任意一个端口PY存在物理直连路径,则将对应的物理路径直连信息LXY设置为第一预设值,表示从端口PX到端口PY能够直接通信。若从任意一个端口PX到另外任意一个端口PY不存在物理直连路径,则将对应的物理路径直连信息LXY设置为第二预设值,表示从端口PX到端口PY不能直接通信,而需要跨其他端口进行通信。
本实施例的片上网络仿真模型的动态路径规划方法,根据任意两个端口之间是否存在物理直连路径,来分别设置连接特性表中对应的物理路径直连信息,使得通过该连接特性表,能够直观地得出任意两个端口之间是否存在物理直连路径,方便后续路径规划。
示例性的,所述建立各所述端口的路径状态的路径状态表,所述路径状态表动态记载有任意两个所述端口之间的物理直连路径占用信息,包括:
若所述任意两个端口之间不存在物理直连路径或虽存在物理直连路径但其为空闲状态,则将该两个端口的物理直连路径占用信息设置为第三预设值。若所述任意两个端口之间存在物理直连路径且为占用状态,则将该两个端口的物理直连路径占用信息设置为第四预设值。
具体地,若从任意一个端口PX到另外任意一个端口PY不存在物理直连路径,或者从任意一个端口PX到另外任意一个端口PY存在物理直连路径但该物理直连路径当前为空闲状态,则将对应的物理直连路径占用信息SXY设置为第三预设值,表示从端口PX到端口PY不存在物理直连路径,或者存在物理直连路径但其当前为空闲状态。若从任意一个端口PX到另外任意一个端口PY存在物理直连路径且该物理直连路径当前为占用状态,则将对应的物理直连路径占用信息SXY设置为第四预设值,表示从端口PX到端口PY虽然能够直接通信,但是对应的物理直连路径当前被占用。
本实施例的片上网络仿真模型的动态路径规划方法,根据任意两个端口之间是否存在物理直连路径以及该物理直连路径当前是否被占用,来分别设置路径状态表中对应的物理直连路径占用信息,使得通过该路径状态表,能够直观地得出任意两个端口之间的物理直连路径当前能否被使用,方便后续路径规划。
示例性的,所述所有可能路径组成可能路径表。
具体地,在可能路径表中,顺序记载有以数据传输起始端口为起点、以数据传输终止端口为终点的各条可能路径。各个端口之间可以按行排列,也可以按列排列。若各个端口之间按行排列,则可以分别设置若干行,以通过每一行来记载每一条可能路径。其中,每一行中与每个端口对应的位置,用来记载对应的可能路径中以该端口为终点的物理路径直连信息。若各个端口之间按列排列,则可以分别设置若干列,以通过每一列来记载每一条可能路径。其中,每一列中与每个端口对应的位置,用来记载对应的可能路径中以该端口为终点的物理路径直连信息。
示例性的,所述根据所述路径状态表,从所述所有可能路径中确定出为空闲状态的所有可选路径,包括:
根据所述路径状态表,建立可能路径状态表,所述可能路径状态表对应于所述可能路径表。
具体地,在可能路径状态表中,各个端口的位置与可能路径表中各个端口的位置相对应。也就是说,当可能路径表中顺序记载的各个端口按行排列时,可能路径状态表中顺序记载的各个端口也按行排列。当可能路径表中顺序记载的各个端口按列排列时,可能路径状态表中顺序记载的各个端口也按列排列。在可能路径状态表中,若各个端口之间按行排列,则可以分别设置若干行,以通过每一行来记载每一条可能路径包括的各个物理直连路径当前的占用信息。其中,每一行中与每个端口对应的位置,用来记载对应的可能路径中以该端口为终点的物理直连路径占用信息。若各个端口按列排列,则可以分别设置若干列,以通过每一列来记载每一条可能路径包括的各个物理直连路径当前的占用信息。其中,每一列中与每个端口对应的位置,用来记载对应的可能路径中以该端口为终点的物理直连路径占用信息。
根据所述可能路径表和所述可能路径状态表,确定出所述所有可选路径。
具体地,可以根据可能路径表,确定出每条可能路径包括的各条物理直连路径,然后根据可能路径状态表,确定出各条物理直连路径中处于空闲状态的物理直连路径,从所有可能路径中确定出各条物理直连路径均处于空闲状态的路径,即得到所有可选路径。
示例性的,所述根据所述可能路径表和所述可能路径状态表,确定出所述所有可选路径,包括:
分别将所述可能路径表和所述可能路径状态表中的对应项进行第一运算得到各所述对应项的第一运算结果,并对同一可能路径中的各所述第一运算结果进行第二运算得到第二运算结果,以根据所述第二运算结果确定所述所有可选路径。
具体地,可以将各条可能路径在可能路径表和可能路径状态表中的对应项进行第一运算,得到各对应项的第一运算结果,然后将同一可能路径中的各第一运算结果进行第二运算,得到每条可能路径对应的各第二运算结果,从各条可能路径中确定出对应的第二运算结果符合预设要求的路径,即可得到所有可选路径。
示例性的,所述第一预设值和所述第四预设值为非零值,所述第二预设值和所述第三预设值为零值。
具体地,在连接特性表中,物理路径直连信息LXY设置的第一预设值可以为非零值,表示从端口PX到端口PY存在物理直连路径。该非零值可以是数据从端口PX直接传输到端口PY所需的时钟数,或者,该非零值也可以是其他非零值,本领域技术人员可以根据实际需要进行设置,本实施例对此并不限制。在连接特性表中,物理路径直连信息LXY设置的第二预设值可以为零值,表示从端口PX到端口PY不存在物理直连路径。在路径状态表中,物理直连路径占用信息SXY设置的第三预设值可以为零值,表示从端口PX到端口PY不存在物理直连路径,或者,表示从端口PX到端口PY虽然存在物理直连路径,但是该物理直连路径当前处于空闲状态。在路径状态表中,物理直连路径占用信息SXY设置的第四预设值可以为非零值,表示从端口PX到端口PY存在物理直连路径,但是该物理直连路径当前处于占用状态。
示例性的,所述分别将所述可能路径表和所述可能路径状态表中的对应项进行第一运算得到各所述对应项的第一运算结果,并对同一可能路径中的各所述第一运算结果进行第二运算得到第二运算结果,以根据所述第二运算结果确定所述所有可选路径,包括:
分别将所述可能路径表和所述可能路径状态表中的对应项进行乘运算得到各所述对应项的第一运算结果,并将所述同一可能路径中的各第一运算结果进行累加,得到各条可能路径对应的各第二运算结果。选取所述第二运算结果为零的可能路径作为所述可选路径。
具体地,在第一预设值和第四预设值为非零值,第二预设值和第三预设值为零值时,可以将各条可能路径在可能路径表和可能路径状态表中的对应项进行乘运算,得到各对应项的第一运算结果,各第一运算结果可能为零值,也可能为非零值。然后将同一可能路径中的各第一运算结果进行累加,得到各条可能路径对应的各第二运算结果,各第二运算结果可能为零值,也可能为非零值。从各条可能路径中选取出对应的第二运算结果为零值的路径,即可得到所有可选路径。
示例性的,所述预设规则包括最短路径规则、随机选取路径规则或顺序选取路径规则。
具体地,在从所有可选路径中选取目标路径时,可以选取其中的最短路径即数据传输所花费的路由时间最短的路径作为目标路径,也可以随机选取一条可选路径作为目标路径,还可以按照各个可选路径排列的顺序,从中选取一条作为目标路径。在按照顺序选取路径规则从所有可选路径中选取目标路径时,可以选取按顺序排列的第一条可选路径,也可以选取按顺序排列的第二条可选路径,还可以选取按顺序排列的第三条可选路径等等,本领域技术人员可以根据实际需要进行选择,本实施例对此并不限制。
为了详细说明上述过程,下文以一具体示例进行说明。
以一个带6个端口的NoC仿真模型为例。
如图4所示,NoC包括6个输入输出端口,分别为端口P1至端口P6,各个端口之间的连接关系如图4所示,图中任意两个端口之间的带箭头的线条,表示该两个端口之间存在沿箭头方向的物理直连路径。例如,端口P1与端口P2之间,有两条物理直连路径,一条是从端口P1到端口P2的物理直连路径,另一条是从端口P2到端口P1的物理直连路径。
在某一个方向上,两个端口之间的物理直连路径要么没有,要么最多只有一条,但是间接的物理路径可能有多条,也就是说,两个端口之间途经其他端口的物理路径可能存在多条。例如,端口P1到端口P3的物理路径,可以是端口P1到端口P3的物理直连路径,也可以是端口P1经过端口P2再到达端口P3的间接物理路径。
建立如图4所示的NoC仿真模型的连接特性表,如表3所示:
表3
Figure BDA0003020942240000161
表3中,0表示该行所对应的端口到该列所对应的端口没有物理直连路径,非0数表示该行所对应的端口到该列所对应的端口有物理直连路径,数据从该行所对应的端口直接传输到该列所对应的端口花费的时钟数为该非0数,也即对应的物理直连路径的长度为该非0数。0所在的位置也可以表示成灰色,以表示在进行路径选择时,该行所对应的端口到该列所对应的端口之间的物理直连路径不可用。
建立如图4所示的NoC仿真模型的路径状态表并初始化,如表4所示:
表4
Figure BDA0003020942240000171
初始化时,任意两个端口之间的物理直连路径,要么不存在,要么处于空闲状态,因此,表4中,将各个物理直连路径占用信息均设置为0。
以端口P1申请向端口P6进行数据传输,但是当前时刻,从端口P2到端口P5的物理直连路径处于占用状态为例,对应的动态路径规划过程具体如下:
根据连接特性表,确定出从端口P1到端口P6共有3条可能路径:
第一条可能路径:P1→P2→P3→P4→P5→P6
第二条可能路径:P1→P3→P4→P5→P6
第三条可能路径:P1→P2→P5→P6
这3条可能路径组成可能路径表,如表5所示:
表5
Possible Routine Table
P<sub>1</sub> P<sub>2</sub> P<sub>3</sub> P<sub>4</sub> P<sub>5</sub> P<sub>6</sub>
0 2 2 2 2 2
0 0 3 2 2 2
0 2 0 0 4 2
表5中,除各个端口所在行,即第0行外,每一行对应一条可能路径。数值0表示该行对应的可能路径中,不存在以该0对应的端口为终点的物理直连路径。非零值表示该行对应的可能路径中,以该非零值对应的端口为终点的物理直连路径的长度。
根据当前的路径状态表,建立与表5相对应的可能路径状态表,如表6所示:
表6
State of PR Table
P<sub>1</sub> P<sub>2</sub> P<sub>3</sub> P<sub>4</sub> P<sub>5</sub> P<sub>6</sub>
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 1 0
表6中,由于当前时刻只有从端口P2到端口P5的物理直连路径处于占用状态,所以只有第3条可能路径对应的行中,端口P5的对应位置处为非零值,即1。
对于每条可能路径,将可能路径表表5和可能路径状态表表6中的对应项进行乘运算,得到各对应项的第一运算结果,如表7所示。
将表7中每行的各个第一运算结果进行累加,得到每条可能路径对应的各个第二运算结果,其中,第一条可能路径P1→P2→P3→P4→P5→P6对应的第二运算结果为0,第二条可能路径P1→P3→P4→P5→P6对应的第二运算结果为0,第三条可能路径P1→P2→P5→P6对应的第二运算结果为4。由此可以看出,第一条可能路径P1→P2→P3→P4→P5→P6和第二条可能路径P1→P3→P4→P5→P6包括的各个物理直连路径当前均处于空闲状态,只有第三条可能路径P1→P2→P5→P6包括的各个物理直连路径中存在当前处于占用状态的物理直连路径P2→P5,从而导致第三条可能路径不能作为可选路径,而只能将第一条可能路径和第二条可能路径作为可选路径。
表7
P<sub>1</sub> P<sub>2</sub> P<sub>3</sub> P<sub>4</sub> P<sub>5</sub> P<sub>6</sub>
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 4 0
所有可选路径可以组成可选路径表,如表8所示:
表8
Optional Routine Table
P<sub>1</sub> P<sub>2</sub> P<sub>3</sub> P<sub>4</sub> P<sub>5</sub> P<sub>6</sub>
0 2 2 2 2 2
0 0 3 2 2 2
可选路径表与可能路径表相对应,只是表8只包括处于空闲状态的第一条可能路径P1→P2→P3→P4→P5→P6和第二条可能路径P1→P3→P4→P5→P6
从可选路径表中按照预设规则选取一条目标路径,即可作为端口P1到端口P6的传输路径。当预设规则为最短路径规则时,选取的目标路径为第二条可能路径即P1→P3→P4→P5→P6。当预设规则为随机选取路径规则时,选取的目标路径可以是第一条可能路径P1→P2→P3→P4→P5→P6,也可以是第二条可能路径P1→P3→P4→P5→P6。当预设规则为顺序选取路径规则时,选取的目标路径可以是按顺序排列的第一条可选路径,即第一条可能路径P1→P2→P3→P4→P5→P6,也可以是按顺序排列的第二条可选路径或者最后一条可选路径,即第二条可能路径P1→P3→P4→P5→P6
选取出的目标路径可以存入动态路由表,以供后续使用。
本公开的另一个方面,如图5所示,提供一种片上网络仿真模型的路径规划装置100。该装置100可以应用于前文记载的方法,下述装置中未提及的具体内容可以参考前文相关记载,在此不作赘述。所述片上网络包括多个端口,所述装置100包括:
第一建立模块110,用于建立各所述端口的连接特性的连接特性表,所述连接特性表记载有任意两个所述端口之间的物理路径直连信息;
第二建立模块120,用于建立各所述端口的路径状态的路径状态表,所述路径状态表动态记载有任意两个所述端口之间的物理直连路径占用信息;
第一确定模块130,用于根据所述连接特性表,确定出从数据传输起始端口到数据传输终止端口的所有可能路径,其中,每条所述可能路径中,任意相邻两个端口之间均存在沿数据传输方向的物理直连路径;
第二确定模块140,用于根据所述路径状态表,从所述所有可能路径中确定出为空闲状态的所有可选路径;
选取模块150,用于从所述所有可选路径中按照预设规则选取一条目标路径,以作为所述数据传输起始端口到所述数据传输终止端口的传输路径。
本实施例的片上网络仿真模型的路径规划装置,根据建立的连接特性表和路径状态表,能简单灵活地实现动态路径规划,有效利用NoC,减少了数据的堵塞,提升了路由的效率;算法实现简单,仿真计算量小,大大节省了路由规划和仿真的资源;还能避免数据传输中出现死锁等问题,提升路径的可靠性;在芯片设计中,还能够根据设计人员对NoC的调整,快速评估芯片的性能,及时作出反馈,指导芯片的设计和性能的优化,提升芯片运行程序编译的效率,提升神经网络编译器自动编译程序的效率,降低对运行仿真程序的硬件要求,节省成本。
示例性的,第一建立模块110用于建立各所述端口的连接特性的连接特性表,所述连接特性表记载有任意两个所述端口之间的物理路径直连信息,包括:
第一建立模块110具体用于:
若所述任意两个端口之间存在物理直连路径,则将该两个端口的物理路径直连信息设置为第一预设值;
若所述任意两个端口之间不存在物理直连路径,则将该两个端口的物理路径直连信息设置为第二预设值。
示例性的,第二建立模块120用于建立各所述端口的路径状态的路径状态表,所述路径状态表动态记载有任意两个所述端口之间的物理直连路径占用信息,包括:
第二建立模块120具体用于:
若所述任意两个端口之间不存在物理直连路径或虽存在物理直连路径但其为空闲状态,则将该两个端口的物理直连路径占用信息设置为第三预设值;
若所述任意两个端口之间存在物理直连路径且为占用状态,则将该两个端口的物理直连路径占用信息设置为第四预设值。
示例性的,第一确定模块130还用于将所述所有可能路径组成可能路径表,第二确定模块140用于根据所述路径状态表,从所述所有可能路径中确定出为空闲状态的所有可选路径,包括:
第二确定模块140用于:
根据所述路径状态表,建立可能路径状态表,所述可能路径状态表对应于所述可能路径表;
根据所述可能路径表和所述可能路径状态表,确定出所述所有可选路径。
示例性的,第二确定模块140用于根据所述可能路径表和所述可能路径状态表,确定出所述所有可选路径,包括:
第二确定模块140用于:
分别将所述可能路径表和所述可能路径状态表中的对应项进行第一运算得到各所述对应项的第一运算结果,并对同一可能路径中的各所述第一运算结果进行第二运算得到第二运算结果,以根据所述第二运算结果确定所述所有可选路径。
示例性的,第一建立模块110还用于将所述第一预设值设置为非零值,将所述第二预设值设置为零值;第二建立模块120还用于将所述第三预设值设置为零值,将所述第四预设值设置为非零值;
第二确定模块140用于分别将所述可能路径表和所述可能路径状态表中的对应项进行第一运算得到各所述对应项的第一运算结果,并对同一可能路径中的各所述第一运算结果进行第二运算得到第二运算结果,以根据所述第二运算结果确定所述所有可选路径,包括:
第二确定模块140具体用于:
分别将所述可能路径表和所述可能路径状态表中的对应项进行乘运算得到各所述对应项的第一运算结果,并将所述同一可能路径中的各第一运算结果进行累加,得到各条可能路径对应的各第二运算结果;
选取所述第二运算结果为零的可能路径作为所述可选路径。
示例性的,选取模块150用于从所述所有可选路径中按照预设规则选取一条目标路径,以作为所述数据传输起始端口到所述数据传输终止端口的传输路径,包括:
选取模块150具体用于:
从所述所有可选路径中按照最短路径规则、随机选取路径规则或顺序选取路径规则选取一条目标路径。
本公开的另一个方面,提供一种片上网络仿真模型,所述片上网络仿真模型采用前文记载的所述的方法;或,
所述片上网络仿真模型包括前文记载的所述的装置。
本公开的另一个方面,提供一种多核芯片,包括至少一个计算核组,所述芯片用于执行前文记载的所述的方法;或,
所述芯片包括前文记载的所述的装置。
本公开的另一个方面,提供一种电子设备,包括:
一个或多个处理器;
存储单元,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,能使得所述一个或多个处理器实现根据前文记载的所述的方法。
本公开的另一个方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时能实现根据前文记载的所述的方法。
其中,计算机可读存储介质可以是本公开的装置、设备中所包含的,也可以是单独存在。
其中,计算机可读存储介质可以是任何包含或存储程序的有形介质,其可以是电、磁、光、电磁、红外线、半导体的系统、装置、设备,更具体的例子包括但不限于:具有一个或多个导线的相连、便携式计算机磁盘、硬盘、光纤、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件,或它们任意合适的组合。
其中,计算机可读存储介质也可以包括在基带中或作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码,其具体的例子包括但不限于电磁信号、光信号,或它们任意合适的组合。
可以理解的是,以上实施方式仅仅是为了说明本公开的原理而采用的示例性实施方式,然而本公开并不局限于此。对于本领域内的普通技术人员而言,在不脱离本公开的精神和实质的情况下,可以做出各种变型和改进,这些变型和改进也视为本公开的保护范围。

Claims (10)

1.一种片上网络仿真模型的动态路径规划方法,所述片上网络包括多个端口,其特征在于,所述方法包括:
建立各所述端口的连接特性的连接特性表,所述连接特性表记载有任意两个所述端口之间的物理路径直连信息;
建立各所述端口的路径状态的路径状态表,所述路径状态表动态记载有任意两个所述端口之间的物理直连路径占用信息;
根据所述连接特性表,确定出从数据传输起始端口到数据传输终止端口的所有可能路径,其中,每条所述可能路径中,任意相邻两个端口之间均存在沿数据传输方向的物理直连路径;
根据所述路径状态表,从所述所有可能路径中确定出为空闲状态的所有可选路径;
从所述所有可选路径中按照预设规则选取一条目标路径,以作为所述数据传输起始端口到所述数据传输终止端口的传输路径。
2.根据权利要求1所述的方法,其特征在于,所述建立各所述端口的连接特性的连接特性表,所述连接特性表记载有任意两个所述端口之间的物理路径直连信息,包括:
若所述任意两个端口之间存在物理直连路径,则将该两个端口的物理路径直连信息设置为第一预设值;
若所述任意两个端口之间不存在物理直连路径,则将该两个端口的物理路径直连信息设置为第二预设值。
3.根据权利要求2所述的方法,其特征在于,所述建立各所述端口的路径状态的路径状态表,所述路径状态表动态记载有任意两个所述端口之间的物理直连路径占用信息,包括:
若所述任意两个端口之间不存在物理直连路径或虽存在物理直连路径但其为空闲状态,则将该两个端口的物理直连路径占用信息设置为第三预设值;
若所述任意两个端口之间存在物理直连路径且为占用状态,则将该两个端口的物理直连路径占用信息设置为第四预设值。
4.根据权利要求3所述的方法,其特征在于,所述所有可能路径组成可能路径表,所述根据所述路径状态表,从所述所有可能路径中确定出为空闲状态的所有可选路径,包括:
根据所述路径状态表,建立可能路径状态表,所述可能路径状态表对应于所述可能路径表;
根据所述可能路径表和所述可能路径状态表,确定出所述所有可选路径。
5.根据权利要求4所述的方法,其特征在于,所述根据所述可能路径表和所述可能路径状态表,确定出所述所有可选路径,包括:
分别将所述可能路径表和所述可能路径状态表中的对应项进行第一运算得到各所述对应项的第一运算结果,并对同一可能路径中的各所述第一运算结果进行第二运算得到第二运算结果,以根据所述第二运算结果确定所述所有可选路径。
6.根据权利要求5所述的方法,其特征在于,
所述第一预设值和所述第四预设值为非零值,所述第二预设值和所述第三预设值为零值;
所述分别将所述可能路径表和所述可能路径状态表中的对应项进行第一运算得到各所述对应项的第一运算结果,并对同一可能路径中的各所述第一运算结果进行第二运算得到第二运算结果,以根据所述第二运算结果确定所述所有可选路径,包括:
分别将所述可能路径表和所述可能路径状态表中的对应项进行乘运算得到各所述对应项的第一运算结果,并将所述同一可能路径中的各第一运算结果进行累加,得到各条可能路径对应的各第二运算结果;
选取所述第二运算结果为零的可能路径作为所述可选路径。
7.根据权利要求1至6任一项所述的方法,其特征在于,所述预设规则包括最短路径规则、随机选取路径规则或顺序选取路径规则。
8.一种片上网络仿真模型的路径规划装置,所述片上网络包括多个端口,其特征在于,所述装置包括:
第一建立模块,用于建立各所述端口的连接特性的连接特性表,所述连接特性表记载有任意两个所述端口之间的物理路径直连信息;
第二建立模块,用于建立各所述端口的路径状态的路径状态表,所述路径状态表动态记载有任意两个所述端口之间的物理直连路径占用信息;
第一确定模块,用于根据所述连接特性表,确定出从数据传输起始端口到数据传输终止端口的所有可能路径,其中,每条所述可能路径中,任意相邻两个端口之间均存在沿数据传输方向的物理直连路径;
第二确定模块,用于根据所述路径状态表,从所述所有可能路径中确定出为空闲状态的所有可选路径;
选取模块,用于从所述所有可选路径中按照预设规则选取一条目标路径,以作为所述数据传输起始端口到所述数据传输终止端口的传输路径。
9.一种片上网络仿真模型,其特征在于,所述片上网络仿真模型采用权利要求1至7中任一项所述的方法;或,
所述片上网络仿真模型包括权利要求8所述的装置。
10.一种多核芯片,包括至少一个计算核组,其特征在于,所述芯片用于执行权利要求1至7中任一项所述的方法;或,
所述芯片包括权利要求8所述的装置。
CN202110402725.3A 2021-04-14 2021-04-14 片上网络仿真模型及动态路径规划方法、装置、多核芯片 Pending CN115204086A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110402725.3A CN115204086A (zh) 2021-04-14 2021-04-14 片上网络仿真模型及动态路径规划方法、装置、多核芯片

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110402725.3A CN115204086A (zh) 2021-04-14 2021-04-14 片上网络仿真模型及动态路径规划方法、装置、多核芯片

Publications (1)

Publication Number Publication Date
CN115204086A true CN115204086A (zh) 2022-10-18

Family

ID=83573942

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110402725.3A Pending CN115204086A (zh) 2021-04-14 2021-04-14 片上网络仿真模型及动态路径规划方法、装置、多核芯片

Country Status (1)

Country Link
CN (1) CN115204086A (zh)

Similar Documents

Publication Publication Date Title
US11709664B2 (en) Anti-congestion flow control for reconfigurable processors
US10684776B2 (en) Memory configuration for inter-processor communication in an MPSoC
TWI827792B (zh) 多路徑神經網路、資源配置的方法及多路徑神經網路分析器
CN107346351A (zh) 用于基于源代码中定义的硬件要求来设计fpga的方法和系统
US10019410B2 (en) Method, apparatus, and computer-readable medium for parallelization of a computer program on a plurality of computing cores
US20180181503A1 (en) Data flow computation using fifos
WO2018188081A1 (en) Pessimism reduction in static timing analysis
JP2022033688A (ja) メモリアクセスリクエストスケジューリング方法、装置、電子デバイス、コンピュータ可読記憶媒体及びコンピュータプログラム
WO2022083527A1 (zh) 确定逻辑核布局的方法、模型训练方法、电子设备、介质
US20170083375A1 (en) Thread performance optimization
US9223910B1 (en) Performance and memory efficient modeling of HDL ports for simulation
US10255399B2 (en) Method, apparatus and system for automatically performing end-to-end channel mapping for an interconnect
Farooq et al. Exploring and optimizing partitioning of large designs for multi-FPGA based prototyping platforms
JP2007293871A (ja) プロセッサの異種クラスターを有するハードウエアエミュレーションシステム
WO2022193183A1 (zh) 片上网络的仿真模型生成方法、装置、电子设备及计算机可读存储介质
CN115345100A (zh) 片上网络仿真模型及动态路径规划方法、装置、多核芯片
CN115250251B (zh) 片上网络仿真中的传输路径规划方法、装置、电子设备及计算机可读存储介质
CN115204086A (zh) 片上网络仿真模型及动态路径规划方法、装置、多核芯片
CN115840593A (zh) 处理器中的执行部件的验证方法及装置、设备、存储介质
Bytyn et al. Dataflow aware mapping of convolutional neural networks onto many-core platforms with network-on-chip interconnect
US10235486B2 (en) Method, apparatus and system for automatically deriving parameters for an interconnect
US9600613B1 (en) Block-level code coverage in simulation of circuit designs
CN115204085A (zh) 片上网络仿真模型及最短路径规划方法、装置、多核芯片
CN111143208B (zh) 基于处理器技术辅助fpga实现ai算法的验证方法
CN111832714B (zh) 运算方法及装置

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
CB02 Change of applicant information
CB02 Change of applicant information

Country or region after: China

Address after: Room 201, No. 6 Fengtong Heng Street, Huangpu District, Guangzhou City, Guangdong Province

Applicant after: Guangzhou Ximu Semiconductor Technology Co.,Ltd.

Address before: Building 202-24, No. 6, Courtyard 1, Gaolizhang Road, Haidian District, Beijing

Applicant before: Beijing SIMM Computing Technology Co.,Ltd.

Country or region before: China