CN114978859A - 片上网络架构及相关设备、数据传输系统 - Google Patents
片上网络架构及相关设备、数据传输系统 Download PDFInfo
- Publication number
- CN114978859A CN114978859A CN202210521547.0A CN202210521547A CN114978859A CN 114978859 A CN114978859 A CN 114978859A CN 202210521547 A CN202210521547 A CN 202210521547A CN 114978859 A CN114978859 A CN 114978859A
- Authority
- CN
- China
- Prior art keywords
- data
- network
- transmitted
- chip
- transmission path
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/04—Network management architectures or arrangements
- H04L41/044—Network management architectures or arrangements comprising hierarchical management structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4004—Coupling between buses
- G06F13/4022—Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/78—Architectures of general purpose stored program computers comprising a single central processing unit
- G06F15/7807—System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package
- G06F15/781—On-chip cache; Off-chip memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/78—Architectures of general purpose stored program computers comprising a single central processing unit
- G06F15/7807—System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package
- G06F15/7825—Globally asynchronous, locally synchronous, e.g. network on chip
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mathematical Physics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明实施例提供一种片上网络架构及相关设备、数据传输系统,所述片上网络架构包括存储配置层,用于为片上网络配置存储设备,以使待传输数据在传输过程中暂存于所述存储设备中;仲裁控制层,用于对待传输数据的传输路径进行仲裁控制,确定连接至输出接口的传输路径,以使连接至输出接口的传输路径为数据传输通路;数据链路层,用于控制所述待传输数据基于对应的传输路径传输。本发明实施例提高了网络架构的配置效率。
Description
技术领域
本发明实施例涉及芯片技术领域,具体涉及一种片上网络架构及相关设备、数据传输系统。
背景技术
片上网络(NOC,network on chip,也成称为片上总线网络)用于实现系统级芯片(SOC,system on chip)中各个设备的互联,是多核技术的主要组成部分。
在进行片上网络的数据传输时,通常需要对片上网络的网络架构进行配置的调整,以适应网络数据的传输规律。然而,在进行网络架构的再配置时,配置效率低。
因此,如何实现对网络架构的高效配置,成为本领域技术人员亟待解决的问题。
发明内容
有鉴于此,本发明实施例提供一种片上网络架构及相关设备、数据传输系统,以实现对网络架构的高效配置。
为实现上述目的,本发明实施例提供如下技术方案。
第一方面,本发明实施例提供一种片上网络架构,包括:
存储配置层,用于为片上网络配置存储设备,以使待传输数据在传输过程中暂存于所述存储设备中;
仲裁控制层,用于对待传输数据的传输路径进行仲裁控制,确定连接至输出接口的传输路径,以使连接至输出接口的传输路径为数据传输通路;
数据链路层,用于控制所述待传输数据基于对应的传输路径传输。
第二方面,本发明实施例还提供一种片上网络,包括:
输入接口、输出接口、位于网络中的节点、位于节点与输出接口之间的仲裁器,以及,连接在输入接口和输出接口间的存储设备;其中,所述片上网络用于构建本发明实施例所提供的片上网络架构。
第三方面,本发明实施例还提供一种数据传输系统,其特征在于,所述数据传输系统基于本发明实施例提供的片上网络架构进行数据传输。
第四方面,本发明实施例还提供一种存储介质,所述存储介质存储一条或多条可执行指令,所述一条或多条可执行指令用于基于权利要求1-14任一项所述的片上网络架构进行数据传输。
本发明实施例提供的一种片上网络架构及相关设备、数据传输系统,所述片上网络架构包括存储配置层,用于为片上网络配置存储设备,以使待传输数据在传输过程中暂存于所述存储设备中;仲裁控制层,用于对待传输数据的传输路径进行仲裁控制,确定连接至输出接口的传输路径,以使连接至输出接口的传输路径为数据传输通路;数据链路层,用于控制所述待传输数据基于对应的传输路径传输。
可以看出,通过对片上网络架构进行分层管理,基于不同的层结构进行不同方面的控制,从而使得各层结构之间相互独立,进而降低了网络结构中各配置之间的关联性。在进行网络架构的配置过程中,基于各层结构之间的独立性,使得对各层结构的配置并不会影响其他的层结构,从而降低了对其他层结构中的配置的影响,减少了网络架构的再配置流程需要考虑的关联因素,提高了网络架构的配置效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例提供的一种片上网络的可选结构图;
图2为本发明实施例提供的一种片上网络中的缓存的可选结构示意图;
图3为本发明实施例提供的仲裁器基于传输路径进行仲裁的可选示意图;
图4为本发明实施例提供的片上网络架构的可选层结构图;
图5为本发明实施例提供的一种物理通道的分配示例图;
图6为本发明实施例提供的一种片上网络进行数据传输的可选流程示意图;
图7为本发明实施例提供的一种片上网络的可选示意图;
图8为本发明实施例提供的一种子网络连接结构示例图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如背景技术所述,在进行网络架构的再配置时,配置效率低。
发明人认为,这是由于,在进行网络架构的再配置时,通常会由于不同配置之间的关联关系,造成对其他配置的影响,从而导致网络架构的再配置流程需要考虑较多的关联因素,进而导致网络架构的配置效率低,甚至需要对网络架构进行重新设计。
基于此,本发明实施例提供了一种片上网络架构及相关设备、数据传输系统,所述片上网络架构包括存储配置层,用于为片上网络配置存储设备,以使待传输数据在传输过程中暂存于所述存储设备中;仲裁控制层,用于对待传输数据的传输路径进行仲裁控制,确定连接至输出接口的传输路径,以使连接至输出接口的传输路径为数据传输通路;数据链路层,用于控制所述待传输数据基于对应的传输路径传输。
可以看出,通过对片上网络架构进行分层管理,基于不同的层结构进行不同方面的控制,从而使得各层结构之间相互独立,进而降低了网络结构中各配置之间的关联性。在进行网络架构的配置过程中,基于各层结构之间的独立性,使得对各层结构的配置并不会影响其他的层结构,从而降低了对其他层结构中的配置的影响,减少了网络架构的再配置流程需要考虑的关联因素,提高了网络架构的配置效率。
下面,对本发明实施例提供的片上网络进行详细的说明。
在一种可选实现中,本发明实施例提供了一种交叉开关矩阵(Crossbar)类型总线拓扑结构的片上网络架构,参考图1示出的一种片上网络的可选结构图,所述片上网络包括输入接口、输出接口、位于网络中的节点位于节点与输出接口之间的仲裁器,以及连接在输入接口和输出接口间的存储设备,其中,一节点用于控制一输入接口至一输出接口的传输路径。
输入接口用于连接至输入端,针对多个输入接口,图中以输入接口0,输入接口1……输入接口N为例进行展示,所述输入端可以为IP(Intellectual Property)模块,也可以为计算核心(core)等,图中以IP模块为输入端为例进行说明,其中,针对多个IP模块,图中以IP_0,IP_1……IP_N为例进行展示;输出接口用于连接至输出端,针对多个输出接口,图中以输出接口0,输出接口1……输出接口N为例进行展示,所述输出端可以为IP模块,也可以为计算核心(core)等,同样的,图中以IP模块为输出端为例进行说明,其中,针对多个IP模块,图中以IP_0,IP_1……IP_N为例进行展示。节点例如可以为开关节点,用于实现提供相应的数据传输路径。
可以理解的是,为实现数据交互,IP模块或计算核心(core)通常即是输入端,也是输出端,只要基于不同的接口连入所述片上网络即可。
在进行数据传输过程中,输入端配置有缓存队列(图中未示出),所述缓存队列存储于存储设备中。其中,一传输路径对应一缓存队列,输入端可以根据待传输数据的目标输出接口,将待传输数据分配至对应的缓存队列,相应的,输出接口接收对应传输路径的待传输数据。
具体的,所述存储设备可以包括缓存,所述缓存可以设置在片上网络的输入接口、输出接口、节点(下称节点)中的一个或多个部件中,用于将待传输数据缓存至相应的节点,并在传输路径竞争成功时,使输出接口读取待传输数据。参考图2示出的片上网络中缓存可选结构示意图,其中以输入接口、输出接口、节点均配置有缓存为例,对应的,输入接口对应的缓存在图中以cfg_in_buff标识,节点对应的缓存在图中以cfg_pt_buff标识,输入接口对应的缓存在图中以cfg_ot_buff标识,其中,一传输路径对应一缓存(参考图中的虚线箭头)。在一个可选的示例中,一行节点可以对应一行缓存,各节点对应的缓存可以从该行缓存中分配,且各节点分配的缓存可以相同,也可以不同。对应的,在另一些示例中,一列节点还可以对应一列缓存,各节点对应的缓存可以从该列缓存中分配,且各节点分配的缓存可以相同,也可以不同。在同时具有行缓存和列缓存的示例中,各节点分配的缓存可以为行缓存分配的缓存和列缓存分配的缓存的和。
进一步的,参考图1,所述存储设备还可以进一步包括连接在输入接口和输出接口间的共享存储设备,用于存储竞争传输路径失败的待传输数据,并在所述传输至输出接口的待传输数据空闲时,利用所述传输路径传输所述待传输数据。其中,所述共享存储设备可以直接或间接连接在输入接口和输出接口之间,例如,在所述共享存储设备间接连接在输入接口和输出接口之间时,所述共享存储设备可以连接在节点和仲裁器之间。
以图1举例来说,在输入接口0基于节点B和输入接口1基于节点A同时竞争对应输出接口1的传输路径时,竞争失败的传输路径,则将待传输数据传输至共享存储设备。以节点A的传输路径竞争失败为例,对应节点A的待传输数据传输至共享存储设备(参考虚线传输路径),并在后续节点A的传输路径空闲时,将待传输数据基于FIFO(先进先出机制)传输至输出接口1对应的仲裁器,以将待传输数据传输至输出接口1。在其他可选示例中,所述共享存储设备与所述仲裁器之间还可以进一步设置FIFO存储器,从而提升数据处理性能。可以理解的是,通过在网络中实现严格报序的传输,从而使得本发明实施例即便增加存储设备的容量也不会导致乱序。
需要说明的是,所述待传输数据的传输路径为数据传输通路,指的是用于需要传输待传输数据的路线为畅通状态,也可以理解为,对应传输路径的物理线路为空闲状态。举例来说,图1中,在进行输入接口0至节点B的数据传输过程中,若共享存储设备中存储有C节点或D节点传输至输出接口N的待传输数据并无其他数据需要传输,即传输路径为数据传输通路,也即该路线为空闲状态,则该传输路径即可基于共享存储设备至输出端口N的传输路径传输至输出接口N。
仲裁器用于基于预设的规则进行仲裁,确定传输至输出接口的待传输数据,具体的,在多个传输路径同时传输待传输数据至同一输出接口(即,产生传输路径竞争,也即产生传输堵塞)时,则仲裁选出一传输路径连接至输出结构,从而使连接至输出接口的传输路径为数据传输通路,进而使输出接口接收该传输路径的待传输数据。其中,仲裁选出的传输路径可以理解为竞争传输路径成功,未被仲裁宣传的传输路径可以理解为竞争传输路径失败。而在一个传输路径传输待传输数据至一输出接口时,则仲裁输出接口接收该传输路径的待传输数据,相应的,该传输路径可以理解为竞争传输路径成功。
参考图3示出的仲裁器基于传输路径进行仲裁的可选示意图,其中,输入端仍以多个IP模块为例,图中以IP_0,IP_1……IP_N为例进行展示;输出端仍以多个IP模块为例,同样的,图中以IP_0,IP_1……IP_N为例进行展示,P为网络中的节点,所述片上网络进一步包括选择器,用于指示输入的待传输数据将要选择的节点,相应的,仲裁器则指示仲裁的节点中,输出的待传输数据所来自的节点。
需要说明的是,所述片上网络架构的硬件架构还可以为其他类型,本发明在此不做具体的限定。
在一种可选实现中,基于图1示出的片上网络架构的可选结构图,本发明实施例进一步提供一种片上网络架构的可选层结构图,图4示例性的示出了本发明实施例提供的片上网络架构的可选层结构图。所述片上网络架构包括:
存储配置层110,用于为片上网络配置存储设备,以使待传输数据在传输过程中暂存于所述存储设备中;仲裁控制层120,用于对待传输数据的传输路径进行仲裁控制,确定连接至输出接口的传输路径,以使连接至输出接口的传输路径为数据传输通路;数据链路层130,用于控制所述待传输数据基于对应的传输路径传输。
所述存储配置层110可以为片上网络配置存储设备,所述存储设备可以为对应各个节点的缓存,也可以为对应片上网络的共享存储设备,或者,所述存储设备也可以同时包括对应各个节点的缓存和对应片上网络的共享存储设备。
其中,在为片上网络配置的存储设备为对应各个节点的缓存时,可以在数据传输过程中,将待传输数据暂存于相应节点的缓存中,并在传输路径竞争成功时,使输出接口读取待传输数据。
其中,在为片上网络配置的存储设备为对应片上网络的共享存储设备时,可以在数据传输过程中,存储竞争传输路径失败的待传输数据,并在所述待传输数据的传输路径为数据传输通路时,利用所述传输路径传输所述待传输数据。
相应的,在为片上网络配置的存储设备同时包括对应各个节点的缓存和对应片上网络的共享存储设备时,可以在数据传输过程中,将待传输数据暂存于传输路径所对应的节点的缓存中,并且,在传输路径竞争成功时,使输出接口读取待传输数据,在传输路径竞争失败时,存储该待传输数据,并在该待传输数据的传输路径至输出接口的数据传输通路空闲时,利用所述传输路径传输所述待传输数据。
可以理解的是,在片上网络的实际运行过程中,所有的输出接口不是每拍(即芯片的一个时钟运转周期)都会被使用,而共享存储设备的配置,使得竞争失败的待传输数据可以在数据传输通路空闲时输出,从而协调数据传输流程,避免数据传输通路不足时,竞争失败的待传输数据堵塞输出端口,同时,提高数据传输通路空闲时的数据传输效率,使得片上网络的数据传输始终处于高效运转状态,或大部分时间处于满带宽运转状态。
需要说明的是,针对所述存储配置层的配置,可以包括对片上网络中各节点的缓存容量的大小,其中,一节点的所述缓存容量最小可以为0,具体的,所述存储配置层可以为各行节点分配该行节点对应的行缓存,和/或,所述存储配置层可以为各列节点分配该列节点对应的列缓存,从而实现对各节点缓存的配置。在可选示例中,还可以包括片上网络中各节点对应的缓存的存储形式,例如寄存器,RAM(随机存取存储器,Random Access Memory)或FIFO存储器(First Input First Output,先进先出存储器)。其中,针对所述存储配置层的配置,可以考虑网络负载能力,延时要求,成本控制等因素,同时,在一些示例中,还可以进一步考虑各输入/输出接口对应连接的输入/输出端的数据传输特性。
仲裁控制层120,用于对待传输数据的传输路径进行仲裁控制,确定连接至输出接口的传输路径,以使连接至输出接口的传输路径为数据传输通路。
所述仲裁控制层120用于控制仲裁器基于预设的机制进行仲裁,其中,所述仲裁控制层120的仲裁方式可以为随机仲裁、权重仲裁等,本发明在此不做具体的限定。可以理解的是,仲裁控制层120在多个传输路径同时传输待传输数据至同一输出接口(即,产生传输路径竞争,也即产生拥堵)时,则仲裁选出一传输路径连接至输出接口,从而使连接至输出接口的传输路径为数据传输通路,进而使输出接口接收该传输路径的待传输数据。而在一个传输路径传输待传输数据至一输出接口时,则仲裁该传输路径连接至该输出接口,从而使连接至输出接口的传输路径为数据传输通路,进而使输出接口接收该传输路径的待传输数据。
所述仲裁控制层120还可以基于各虚拟通道的拥堵数据,调整虚拟通道对应的物理通道的带宽。具体的,在片上网络中,相对于物理通道,还设置有虚拟通道(virtualchannelVC),其中,虚拟通道与物理通道之间具有对应关系。在进行数据传输时,通常以虚拟通道进行待传输数据的分配,相应的,在物理层面,待传输数据则基于所分配的虚拟通道对应的物理通道进行传输。
在初始阶段,所述虚拟通道可以均分物理通道的带宽,然而,随着片上网络的运转,有些虚拟通道可能经常处于拥堵状态(例如,数据对应的传输路径经常处于竞争状态),而有些虚拟通道可能经常处于空闲状态,在本发明实施例中,则可以基于各虚拟通道的拥堵数据(例如上一周期内的拥堵次数),为虚拟通道调整其对应的物理通道的带宽,从而使得虚拟通道在下一周期内基于调整后的带宽进行数据的传输。在一个可选的示例中,所述虚拟通道可以根据QoS(Quality of Service,服务质量)识别完成带宽的分配调整。相应的,所述仲裁控制层中,仲裁器可以提供QoS支持。
显然,通过适应性的调整片上网络架构的硬件资源,可以提高硬件资源的利用率,从而提高片上网络的数据传输效率,提高网络的QoS。
其中,在本发明实施例中,所述虚拟通道和物理通道的调整,可以适应于输入端和输入接口之间,也可以适应于输入接口与节点之间,还可以适应于节点与输出接口之间,本发明实施例在此不做具体的限定。
参考图5示出的一种物理通道的分配示例图,其中,以输入/输出端(通常一个端同时为输入端和输出端)和输入/输出接口之间为例进行说明,可以看出,在进行虚拟通道和物理通道的调整后,输入/输出端IP_0的子通道sub-phy110~sub-phy11N已不再限于初始均分后的子通道sub-phy120~sub-phy12N,而是进一步利用了子通道sub-phy220,相应的,输入/输出端IP_1的子通道sub-phy210~sub-phy21N则不再利用子通道sub-phy220,而是调整为sub-phy22N,而其他输入/输出端则保持了原有的通道配置,即,子通道sub-phy310~sub-phy31N配置至子通道sub-phy320~sub-phy32N,子通道sub-phy410~sub-phy41N配置至子通道sub-phy420~sub-phy42N。其中,仲裁控制层可以利用网络控制(Fabriccontol)单元,接收软件或者硬件的信息以控制网络连接。
数据链路层130,用于控制所述待传输数据基于对应的传输路径传输。具体的,在仲裁选出待传输数据的传输路径后,该传输路径即可理解为数据传输通路,进而,则可以根据具体的结果数据进行数据的迁移。其中,该结果数据至少用于表明传输路径为数据传输通路,进而可以控制传输路径中后一设备读取前一设备存储的待传输数据,实现待传输数据的传输。当然,本发明中数据迁移的方式可以为valid-ready握手方式、req-gnt握手方式或enable-credit握手方式,本发明在此不做具体的限定。
参考图6示出的片上网络进行数据传输的可选流程示意图,在进行数据传输的流程中,基于仲裁器以确定的传输路径,可以利用节点中的缓存,以及相应的握手方式实现数据握手传输,从而将待传输数据传输至各输入/输出端,
在本发明实施例中,所述数据链路层还可以进一步用于提供数据压缩策略,以使数据被压缩后传输。
具体的,一个可选的数据压缩策略可以如下:
在进行数据传输时,可以将待传输数据分割为具有预设长度的数据段,相应的,待传输数据包括至少一个数据段。同时,可以将数据段划分为有效数据和无效数据,并提供与数据段对应的标识位,以表明对应数据段为有效数据或无效数据。对应所述待传输数据的所有标识位可以构成标识数据段,且标识数据段中的标识位的排列顺序与所述待传输数据的数据段的排列顺序一致。
例如,可以设置数据段为8bit,将每8bit数据对应一个标识位bitbyte_en。在本发明的其他示例中,也可以设置数据段的预设长度为其他值,例如16bit、32bit、64bit等,本发明在此不做具体的限定。
而在进行数据传输时,可以基于标识数据段的指示,仅传输所述待传输数据中的有效数据和与所述待传输数据对应的标识数据段,从而压缩待传输数据的数据量,提高数据传输效率。
在一个具体的示例中,可以将待传输数据的无效数据删除,并将剩余的数据紧致排列,形成压缩数据,并进一步传输所述压缩数据。
可以理解的是,基于该压缩策略,所述数据链路层还进一步提供数据解压缩策略,以还原所述待传输数据。对应的解压缩策略可以如下:
基于标识数据段中的标识位以及标识位在标识数据段中的位置,确定所接收的数据在待传输数据中的位置,进一步补足无效数据,从而还原待传输数据。
在进一步的示例中,在待传输数据的所有数据段均为有效数据时,则可以去除所述标识数据段,仅传输待传输数据,从而压缩待传输数据的数据量,提高数据传输效率。
具体的,可以设定全部为“0”的数据为无效数据,同时,设定有效数据的标识位为“1”,在标识数据段中的数据均为“1”时,则可以将标识数据段的数据反转,使其全部为“0”,进而不再传输标识数据段。
而对应解压缩策略可以设定为,在接收的数据长度与待传输数据的长度相等时,确定所接收的数据为待传输数据。
可以理解的是,本发明实施例提供的片上网络架构,在易于配置的同时,还便于网络拓扑灵活变化,从而可以简化开发流程。并且,本发明实施例提供的片上网络架构,对应的物理硬件如输入/输出接口、节点、仲裁器等均为重复性组件,可以基于相应的需求随时进行接口和节点的增删,而对应的架构仅需逐层进行配置调整即可,进一步提高了网络拓扑的灵活性。
可以理解的是,片上网络的接口和承载能力是有限的,随着片上网络的接口越多,芯片设计时序越紧张。同时,片上网络的接口越多,规模越大,相应接口间的最大传输距离越远,片上网络的负担也会越重。基于此,本发明实施例进一步提供了一种片上网络,所述片上网络可以包括子网络,其中,子网络可以基于邻近原则进行组网,且子网络之间相互连接。
在一个可选的示例中,片上网络可以包括多个子网络,具体的,参考图7示出的一种片上网络的可选示意图,以第一子网络和第二子网络进行组网为例进行说明。其中,第一子网络和第二子网络均可以理解为独立的片上网络,第一子网络和第二子网络可以通过输入/输出接口互连组网。具体的,第一子网络的一输出接口连接至第二子网络的输入接口,第一子网络的一输入接口连接至第二子网络的输出接口。
可以理解的是,相比于各模块/核心之间的互连通道,子网络之间连接的通道有更大的带宽需求。在本发明实施例中,可以通过多接口互连的方式,以适应该带宽需求。具体的,可以为子网络分配多个输入/输出接口,从而适应子网络的带宽需求。在一个具体的示例中,参考图7示出的一片上网络的可选示意图,可以看出,与一个输入/输出接口连接一个IP相比,所述第一子网络连接至所述第二子网络的输入接口可以为多个,所述第一子网络连接至所述第二子网络的输出接口可以为多个。
需要说明的是,在一些可选的示例中,为一输入/输出端同时分配多个输入/输出接口,所述输入/输出端并不仅限于子网络,同时还可以为模块或计算核心等,本发明在此不做具体的限定。
可以看出,相比于为一输入/输出端增大端口的总线宽度以适应较大的带宽需求,本发明实施例通过为一输入/输出端同时分配多个输入/输出接口,可以使得网络组件统一化,从而避免过多类型的组件造成的网络结构复杂且对应配置复杂的问题。
具体的,在同时分配有多个输入/输出接口的网络中,相应的数据传输由串行传输变为了并行传输。基于此,可以在仲裁控制层为对应数据传输流程增加顺序配置功能。
具体的,当一输入/输出端同时分配多个输入/输出接口时,多个输入/输出接口的待传输数据同时传输,仲裁控制层可以为不同的挂载路径(例如挂载至输入接口的物理总线或挂载至输出接口的物理总线)配置优先顺序,从而基于相应的优先顺序确定不同待传输数据的传输顺序。其中,所述挂载路径用于指示所述输入接口与物理总线的挂载关系,和,所述输出接口与物理总线的挂载关系。
其中,所述优先顺序可以基于物理总线中,待传输数据的优先级和/或数据类型确定,例如,数据传输要求先传输控制信息,再传输与控制信息匹配的数据时,所述控制信息和匹配的数据可以基于不同的挂载路径在同一时钟周期内传输至输入/输出接口,而仲裁控制层则可以为不同的挂载路径配置顺序配置功能,从而将需要先传输的信号配置在优先级高的挂载路径(例如具有优先顺序的物理总线),将后传输的信号配置在优先级低的挂载路径(例如普通顺序的物理总线),从而使得待传输数据即便为并发传输,也不会出现数据传输顺序的换乱。
参考图7所示,以控制信息为头数据(图中示为Head),匹配的数据为尾数据(图中示为Tail),在数据的输入路径,可以将用于传输Head的挂载路径配置为高优先级,将用于传输Tail的挂载路径配置为低优先级进行数据的传输。
即便是优先级不同的数据,也可以在挂载路径通畅的前提下并行发送,而高优先级的数据可以加载至优先级高的挂载路径,而低优先级的数据可以加载至优先级低的挂载路径,从而可以从挂载路径上区分数据的优先级,并使得相应的优先级信息保留至网络传输的下一层,从而维持优先级的判定。
进一步的,当同时分配多个输入接口的输入端向分配单一输出接口的输出端传输待传输数据时,所述仲裁控制层可以配置仲裁器基于挂载路径的优先级顺序输出待传输数据,从而避免待传输数据出现数据传输顺序混乱的现象。
仍以图7为例,基于用于传输Head的挂载路径配置为高优先级,用于传输Tail的挂载路径配置为低优先级进行数据的传输,从而使得无论Head对应的延迟(图中示为delay1)与Tail对应的延迟(图中示为delay2)如何,仍能使输出的数据以优先级顺序输出,进而保证数据原有的顺序。
在进一步的可选示例中,所述片上网络中,不同子网络之间可以采用同步器进行连接,其中,该连接的连接方式可以异步连接,以片上网络包括第一子网络和第二子网络为例,第一子网络和第二子网络可以为异步连接,参考图8示出的子网络连接结构示例图,所述异步连接例如可以为afifo(Asynchronous First In First Out异步先进先出),这样每个子网络根据其具体情况(包括但不限于IP模块的工作频率,子网络延时要求等),动态的设置各自的电压频率。
在进一步的可选示例中,本发明实施例进一步为所述存储配置层、所述仲裁控制层和所述数据链路层中,至少一层配置有独立的时钟门控管理,用于基于对应层的运行状态进行时钟的开关控制,以降低片上网络的功耗。
在一个具体的示例中,各层均配置独立的时钟门控管理,用于基于各层的运行状态进行时钟的开关控制。例如,在仲裁控制层完成一次仲裁后,可以关闭仲裁控制层的时钟,待本次仲裁的待传输数据传输完成后,再开启仲裁控制层的时钟,以执行下一仲裁处理。
或者,在另一示例中,在待传输数据出现传输堵塞时,存储配置层需存储竞争传输路径失败的待传输数据,并在所述待传输数据的传输路径为数据传输通路时,利用所述传输路径传输所述待传输数据,相应的,此时可以打开存储配置层的时钟,同时,还可以关闭仲裁控制层和数据链路层的时钟,从而最大程度的节省网络功耗。
本发明实施例还提供一种数据传输系统,该数据传输系统可以基于本发明是实施例提供的片上网络架构进行数据传输。
本发明实施例提供一种存储介质,所述存储介质存储一条或多条可执行指令,所述一条或多条可执行指令用于基于本发明是实施例提供的片上网络架构进行数据传输。
上文描述了本发明实施例提供的多个实施例方案,各实施例方案介绍的各可选方式可在不冲突的情况下相互结合、交叉引用,从而延伸出多种可能的实施例方案,这些均可认为是本发明实施例披露、公开的实施例方案。
虽然本发明实施例披露如上,但本发明并非限定于此。任何本领域技术人员,在不脱离本发明的精神和范围内,均可作各种更动与修改,因此本发明的保护范围应当以权利要求所限定的范围为准。
Claims (26)
1.一种片上网络架构,其特征在于,包括:
存储配置层,用于为片上网络配置存储设备,以使待传输数据在传输过程中暂存于所述存储设备中;
仲裁控制层,用于对所述待传输数据的传输路径进行仲裁控制,确定连接至输出接口的传输路径,以使连接至输出接口的传输路径为数据传输通路;
数据链路层,用于控制所述待传输数据基于对应的传输路径传输。
2.根据权利要求1所述的片上网络架构,其特征在于,所述存储配置层还用于存储竞争传输路径失败的待传输数据,并在所述待传输数据的传输路径为数据传输通路时,利用所述传输路径传输所述待传输数据。
3.根据权利要求2所述的片上网络架构,其特征在于,所述存储配置层还用于在所述待传输数据的传输路径为数据传输通路时,基于先进先出机制传输所述待传输数据。
4.根据权利要求2所述的片上网络架构,其特征在于,所述存储配置层还用于配置片上网络中,各节点的缓存容量的大小,其中,一节点的缓存容量最小为0。
5.根据权利要求4所述的片上网络架构,其特征在于,所述存储配置层还用于配置片上网络中,各节点的缓存容量的大小,具体为:所述存储配置层为各行节点分配该行节点对应的行缓存,和/或,所述存储配置层为各列节点分配该列节点对应的列缓存。
6.根据权利要求1所述的片上网络架构,其特征在于,所述仲裁控制层还用于基于各虚拟通道的拥堵数据,调整虚拟通道对应的物理通道的带宽。
7.根据权利要求6所述的片上网络架构,其特征在于,所述基于各虚拟通道的拥堵数据,调整虚拟通道对应的物理通道的带宽,包括:基于各虚拟通道在上一周期内的拥堵次数,调整虚拟通道对应的物理通道的带宽;其中,所述虚拟通道在下一周期内基于调整后的带宽进行数据的传输。
8.根据权利要求1所述的片上网络架构,其特征在于,所述数据链路层还用于提供数据压缩策略,以使数据被压缩后传输。
9.根据权利要求8所述的片上网络架构,其特征在于,所述数据压缩策略包括:
将所述待传输数据分割为具有预设长度的数据段,其中,所述待传输数据包括至少一个数据段;
将所述数据段划分为有效数据和无效数据,并提供与所述数据段对应的标识位;其中,对应所述待传输数据的标识位构成标识数据段,所述标识数据段中的标识位的排列顺序与所述待传输数据的数据段的排列顺序一致;
基于所述标识数据段的指示,仅传输所述待传输数据中的有效数据和与所述待传输数据对应的标识数据段。
10.根据权利要求9所述的片上网络架构,其特征在于,所述数据压缩策略还包括:
在所述待传输数据的所有数据段均为有效数据时,去除所述标识数据段,仅传输所述待传输数据。
11.根据权利要求8所述的片上网络架构,其特征在于,所述数据链路层还用于提供数据解压缩策略,以还原所述待传输数据。
12.根据权利要求1所述的片上网络架构,其特征在于,一输入端同时分配有多个输入接口,和/或,一输出端同时分配有多个输出接口;
所述仲裁控制层还用于为不同的挂载路径配置优先顺序;其中,所述挂载路径用于指示所述输入接口与物理总线的挂载关系,和,所述输出接口与物理总线的挂载关系;所述优先顺序基于物理总线中待传输数据的优先级和/或数据类型确定。
13.根据权利要求12所述的片上网络架构,其特征在于,当同时分配多个输入接口的输入端向分配单一输出接口的输出端传输所述待传输数据时,仲裁控制层配置仲裁器基于挂载路径的优先级顺序输出待传输数据。
14.根据权利要求1所述的片上网络架构,其特征在于,所述存储配置层、所述仲裁控制层和所述数据链路层中,至少一层配置有独立的时钟门控管理,以基于对应层的运行状态进行时钟的开关控制。
15.根据权利要求14所述的片上网络架构,其特征在于,所述存储配置层、所述仲裁控制层和所述数据链路层中,均配置有独立的时钟门控管理;
所述时钟门控管理至少包括:
所述仲裁控制层完成一次仲裁后,关闭所述仲裁控制层的时钟,待本次仲裁的待传输数据传输完成后,开启所述仲裁控制层的时钟;
和/或,
在所述待传输数据出现传输堵塞时,所述存储配置层开启时钟,存储竞争传输路径失败的待传输数据,并在所述待传输数据的传输路径为数据传输通路时,利用所述传输路径传输所述待传输数据,同时,关闭所述仲裁控制层和所述数据链路层的时钟。
16.一种片上网络,其特征在于,包括:
输入接口、输出接口、位于网络中的节点、位于节点与输出接口之间的仲裁器,以及,连接在输入接口和输出接口间的存储设备;其中,所述片上网络用于构建权利要求1-15任一项所述的片上网络架构。
17.根据权利要求16所述的片上网络,其特征在于,所述存储设备包括共享存储设备,用于存储竞争传输路径失败的待传输数据。
18.根据权利要求17所述的片上网络,其特征在于,所述共享存储设备直接或间接连接在所述输入接口和所述输出接口之间,其中,当所述共享存储设备间接连接在输入接口和输出接口之间时,所述共享存储设备连接在节点和仲裁器之间。
19.根据权利要求16所述的片上网络,其特征在于,所述存储设备包括缓存,所述缓存设置在片上网络的输入接口、输出接口、节点中的一个或多个部件中。
20.根据权利要求19所述的片上网络,其特征在于,所述缓存包括行缓存和/或列缓存,其中,一行节点对应一行缓存,和/或,一列节点对应一列缓存。
21.根据权利要求16所述的片上网络,其特征在于,所述片上网络至少包括第一子网络和第二子网络,其中,第一子网络的一输出接口连接至第二子网络的输入接口,第一子网络的一输入接口连接至第二子网络的输出接口。
22.根据权利要求21所述的片上网络,其特征在于,所述第一子网络连接至所述第二子网络的输入接口为多个,所述第一子网络连接至所述第二子网络的输出接口为多个。
23.根据权利要求21所述的片上网络,其特征在于,所述第一子网络和所述第二子网络异步连接。
24.根据权利要求16所述的片上网络,其特征在于,一输入端同时分配的输入接口为多个,一输出端同时分配的输出接口为多个。
25.一种数据传输系统,其特征在于,所述数据传输系统基于权利要求1-15任一项所述的片上网络架构进行数据传输。
26.一种存储介质,其特征在于,所述存储介质存储一条或多条可执行指令,所述一条或多条可执行指令用于基于权利要求1-15任一项所述的片上网络架构进行数据传输。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210521547.0A CN114978859A (zh) | 2022-05-13 | 2022-05-13 | 片上网络架构及相关设备、数据传输系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210521547.0A CN114978859A (zh) | 2022-05-13 | 2022-05-13 | 片上网络架构及相关设备、数据传输系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114978859A true CN114978859A (zh) | 2022-08-30 |
Family
ID=82983337
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210521547.0A Pending CN114978859A (zh) | 2022-05-13 | 2022-05-13 | 片上网络架构及相关设备、数据传输系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114978859A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115794732A (zh) * | 2023-01-29 | 2023-03-14 | 北京超摩科技有限公司 | 一种基于芯粒的片上网络和封装上网络分层互连系统 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101383712A (zh) * | 2008-10-16 | 2009-03-11 | 电子科技大学 | 一种片上网络的路由节点微结构 |
CN103124420A (zh) * | 2013-01-21 | 2013-05-29 | 电子科技大学 | 一种无线片上网络架构方法 |
CN103383671A (zh) * | 2013-02-26 | 2013-11-06 | 西安交通大学 | 一种基于片上网络的dram通讯优化方法 |
KR20140076130A (ko) * | 2012-12-12 | 2014-06-20 | 한국과학기술원 | 지역 무관 대역폭 규제를 위해 온칩 네트워크를 중재하는 방법 및 멀티 모드 아비터 |
US20140328172A1 (en) * | 2013-05-03 | 2014-11-06 | Netspeed Systems | Congestion control and qos in noc by regulating the injection traffic |
CN105721355A (zh) * | 2016-01-29 | 2016-06-29 | 浪潮(北京)电子信息产业有限公司 | 一种片上网络路由传输报文的方法及片上网络路由 |
CN107454003A (zh) * | 2017-08-18 | 2017-12-08 | 南京航空航天大学 | 一种可动态切换工作模式的片上网络路由器及方法 |
CN109873771A (zh) * | 2019-01-21 | 2019-06-11 | 佛山市顺德区中山大学研究院 | 一种片上网络系统及其通信方法 |
CN110620731A (zh) * | 2019-09-12 | 2019-12-27 | 中山大学 | 一种片上网络的路由装置及路由方法 |
-
2022
- 2022-05-13 CN CN202210521547.0A patent/CN114978859A/zh active Pending
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101383712A (zh) * | 2008-10-16 | 2009-03-11 | 电子科技大学 | 一种片上网络的路由节点微结构 |
KR20140076130A (ko) * | 2012-12-12 | 2014-06-20 | 한국과학기술원 | 지역 무관 대역폭 규제를 위해 온칩 네트워크를 중재하는 방법 및 멀티 모드 아비터 |
CN103124420A (zh) * | 2013-01-21 | 2013-05-29 | 电子科技大学 | 一种无线片上网络架构方法 |
CN103383671A (zh) * | 2013-02-26 | 2013-11-06 | 西安交通大学 | 一种基于片上网络的dram通讯优化方法 |
US20140328172A1 (en) * | 2013-05-03 | 2014-11-06 | Netspeed Systems | Congestion control and qos in noc by regulating the injection traffic |
CN105721355A (zh) * | 2016-01-29 | 2016-06-29 | 浪潮(北京)电子信息产业有限公司 | 一种片上网络路由传输报文的方法及片上网络路由 |
CN107454003A (zh) * | 2017-08-18 | 2017-12-08 | 南京航空航天大学 | 一种可动态切换工作模式的片上网络路由器及方法 |
CN109873771A (zh) * | 2019-01-21 | 2019-06-11 | 佛山市顺德区中山大学研究院 | 一种片上网络系统及其通信方法 |
CN110620731A (zh) * | 2019-09-12 | 2019-12-27 | 中山大学 | 一种片上网络的路由装置及路由方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115794732A (zh) * | 2023-01-29 | 2023-03-14 | 北京超摩科技有限公司 | 一种基于芯粒的片上网络和封装上网络分层互连系统 |
CN115794732B (zh) * | 2023-01-29 | 2023-07-04 | 北京超摩科技有限公司 | 一种基于芯粒的片上网络和封装上网络分层互连系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7042891B2 (en) | Dynamic selection of lowest latency path in a network switch | |
CN111104775B (zh) | 一种片上网络拓扑结构及其实现方法 | |
US5835491A (en) | Method for supporting multicast capabilities in switching networks with a reservation ring | |
US7227841B2 (en) | Packet input thresholding for resource distribution in a network switch | |
EP2613479B1 (en) | Relay device | |
US7352765B2 (en) | Packet switching fabric having a segmented ring with token based resource control protocol and output queuing control | |
US20020118692A1 (en) | Ensuring proper packet ordering in a cut-through and early-forwarding network switch | |
US20080205432A1 (en) | Network-On-Chip Environment and Method For Reduction of Latency | |
US5949789A (en) | Arbitration ring for accessing a limited bandwidth switching network | |
US8014401B2 (en) | Electronic device and method of communication resource allocation | |
WO2004034676A1 (en) | Integrated circuit and method for establishing transactions | |
WO2001067691A1 (en) | NxN CROSSBAR PACKET SWITCH | |
US5883895A (en) | Arbitration ring with automatic sizing for a partially populated switching network | |
CN114978859A (zh) | 片上网络架构及相关设备、数据传输系统 | |
CN113490293B (zh) | 一种双层自适应重配置环簇片上网络硬件结构 | |
CN116627891A (zh) | 一种软件可控的片上网络动态信用管理装置、系统及方法 | |
US7631137B2 (en) | Data processing system and method for converting and synchronising data traffic | |
Nambinina et al. | Extension of the lisnoc (network-on-chip) with an axi-based network interface | |
CN110601996B (zh) | 一种采用令牌保底分布式贪心算法的环网防饥饿流控方法 | |
Salah et al. | Design of a 2d mesh-torus router for network on chip | |
CN111628936B (zh) | 基于宽端口异构瓦片的端口可配置路由器设计方法及路由器 | |
CN117041186B (zh) | 数据传输方法、芯片系统、计算设备及存储介质 | |
CN115334378B (zh) | 一种用于资源池化的全光网络系统、装置及控制方法 | |
Shermi et al. | A novel architecture of bidirectional NoC router using flexible buffer | |
Reddy et al. | QNOC Isochronous Router with Efficient Dynamic Virtual channel and Error Termination |
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 |