Movatterモバイル変換


[0]ホーム

URL:


CN116192733A - Data transmission method and system - Google Patents

Data transmission method and system
Download PDF

Info

Publication number
CN116192733A
CN116192733ACN202310081512.4ACN202310081512ACN116192733ACN 116192733 ACN116192733 ACN 116192733ACN 202310081512 ACN202310081512 ACN 202310081512ACN 116192733 ACN116192733 ACN 116192733A
Authority
CN
China
Prior art keywords
data
routing
transmission
signal
node
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
CN202310081512.4A
Other languages
Chinese (zh)
Other versions
CN116192733B (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.)
Jixin Communication Technology Nanjing Co ltd
Original Assignee
Jixin Communication Technology Nanjing 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 Jixin Communication Technology Nanjing Co ltdfiledCriticalJixin Communication Technology Nanjing Co ltd
Priority to CN202310081512.4ApriorityCriticalpatent/CN116192733B/en
Publication of CN116192733ApublicationCriticalpatent/CN116192733A/en
Application grantedgrantedCritical
Publication of CN116192733BpublicationCriticalpatent/CN116192733B/en
Activelegal-statusCriticalCurrent
Anticipated expirationlegal-statusCritical

Links

Images

Classifications

Landscapes

Abstract

The invention provides a data transmission method and a system, which relate to the technical field of communication, wherein the method comprises the following steps: under the condition that the locking signal sent by the data receiving end is received, locking the temporary circuit; setting an enabling control signal of the temporary circuit as a first signal, and sending transmission data to the data receiving end along the temporary circuit; and stopping sending the transmission data to the data receiving end so as to check the transmission data by the data receiving end. The system performs the method. The invention establishes the route path from the route source node to the route target node based on the network on chip, builds the route path as a temporary circuit, executes data transmission based on the temporary circuit, and provides large bandwidth and low delay requirements for parallel real-time transmission of multi-path data by the low delay and determined resources, thereby improving the data transmission efficiency.

Description

Translated fromChinese
数据传输方法及系统Data transmission method and system

技术领域technical field

本发明涉及通信技术领域,尤其涉及一种数据传输方法及系统。The present invention relates to the field of communication technology, in particular to a data transmission method and system.

背景技术Background technique

现有的互联总线分为包交换的互联总线(包交换通过动态路由传输数据包,收端重排序)和电路交换的互联总线(受控电路建立基于电路的数据通路,在通路上收发任何数据)。The existing interconnection buses are divided into packet-switching interconnection buses (packet switching transmits data packets through dynamic routing, receiving end reordering) and circuit-switching interconnection buses (controlled circuits establish circuit-based data paths, and send and receive any data on the path ).

由于包交换和电路交换的片上互联总线本身的特点,使得在基于包交换或电路交换的片上互联总线进行数据传输时,数据传输延时性高,且不能满足多路数据并行实时传输的带宽需求。Due to the characteristics of the on-chip interconnection bus of packet switching and circuit switching, when data transmission is performed based on the on-chip interconnection bus of packet switching or circuit switching, the data transmission delay is high, and it cannot meet the bandwidth requirements of parallel real-time transmission of multi-channel data. .

发明内容Contents of the invention

本发明提供的数据传输方法及系统,用于解决现有技术中基于包交换或电路交换的片上互联总线不满足多路数据并行实时传输的带宽需求,且数据传输延时性高的问题,能够提供多路数据并行实时传输的大带宽和低延迟需求,提高了数据传输效率。The data transmission method and system provided by the present invention are used to solve the problem that the on-chip interconnection bus based on packet switching or circuit switching in the prior art does not meet the bandwidth requirements of parallel real-time transmission of multi-channel data, and the data transmission delay is high. It provides large bandwidth and low latency requirements for parallel real-time transmission of multi-channel data, and improves data transmission efficiency.

本发明提供的一种数据传输方法,包括:A data transmission method provided by the present invention includes:

在确定接收到数据接收端发送的锁定信号的情况下,锁定临时电路,所述锁定信号用于表征允许锁定所述临时电路,所述临时电路为基于路由路径搭建而成的,所述路由路径为将路由包从路由源节点路由到路由目标节点的路径,所述路由源节点和所述路由目标节点均是根据至少二维网格连接的片上网络中的每个网络节点连接的本地模块确定的,所述路由包是由所述路由源节点产生的;When it is determined that the locking signal sent by the data receiving end is received, the temporary circuit is locked, the locking signal is used to indicate that the temporary circuit is allowed to be locked, the temporary circuit is built based on a routing path, and the routing path In order to route the routing packet from the routing source node to the path of the routing target node, the routing source node and the routing target node are determined according to the local module connected to each network node in the on-chip network connected by at least two-dimensional mesh , the routing packet is generated by the routing source node;

将所述临时电路的使能控制信号设置为第一信号,并将传输数据沿所述临时电路发送给所述数据接收端,所述第一信号用于表征允许向所述数据接收端发送所述传输数据,所述数据接收端是根据所述路由目标节点对应的本地模块确定的;Setting the enabling control signal of the temporary circuit as a first signal, and sending the transmission data to the data receiving end along the temporary circuit, the first signal is used to indicate that the data is allowed to be sent to the data receiving end The transmission data, the data receiving end is determined according to the local module corresponding to the routing target node;

停止向所述数据接收端发送所述传输数据,以供所述数据接收端对所述传输数据进行校验。Stop sending the transmission data to the data receiving end, so that the data receiving end can verify the transmission data.

根据本发明提供的一种数据传输方法,所述停止向所述数据接收端发送所述传输数据之前,所述方法,还包括:According to a data transmission method provided by the present invention, before stopping sending the transmission data to the data receiving end, the method further includes:

将所述使能控制信号设置为第二信号,所述第二信号用于表征传输结束,不再允许向所述数据接收端发送所述传输数据。The enable control signal is set as a second signal, the second signal is used to indicate the end of the transmission, and the transmission data is no longer allowed to be sent to the data receiving end.

根据本发明提供的一种数据传输方法,所述方法,还包括:According to a data transmission method provided by the present invention, the method further includes:

在所述传输数据通过超时校验和循环冗余CRC校验的情况下,根据接收到的所述数据接收端发送的第三信号,解锁所述临时电路,所述第三信号为解锁所述临时电路的信号;In the case that the transmission data passes the timeout check and the cyclic redundancy CRC check, the temporary circuit is unlocked according to the received third signal sent by the data receiving end, and the third signal is to unlock the Signals for temporary circuits;

在所述传输数据未通过所述超时校验或CRC校验的情况下,生成失败报告,并根据接收到的所述第三信号解锁所述临时电路;If the transmission data fails the timeout check or CRC check, generate a failure report, and unlock the temporary circuit according to the received third signal;

其中,所述校验包括所述超时校验和所述CRC校验。Wherein, the check includes the timeout check and the CRC check.

本发明还提供一种数据传输方法,包括:The present invention also provides a data transmission method, including:

向数据发送端发送锁定信号,以供所述数据发送端根据所述锁定信号锁定临时电路,所述锁定信号用于表征允许锁定所述临时电路,所述临时电路为基于路由路径搭建而成的,所述路由路径为将路由包从路由源节点路由到路由目标节点的路径,所述路由源节点和所述路由目标节点均是根据至少二维网格连接的片上网络中的每个网络节点连接的本地模块确定的,所述路由包是由所述路由源节点产生的;Sending a locking signal to the data sending end for the data sending end to lock the temporary circuit according to the locking signal, the locking signal is used to indicate that the temporary circuit is allowed to be locked, and the temporary circuit is built based on a routing path , the routing path is a path for routing a routing packet from a routing source node to a routing target node, and the routing source node and the routing target node are each network node in an on-chip network connected according to at least a two-dimensional grid Determined by the connected local module, the routing packet is generated by the routing source node;

在所述临时电路的使能控制信号为第一信号的情况下,接收数据发送端沿所述临时电路发送的传输数据,所述第一信号用于表征允许向数据接收端发送所述传输数据,所述数据发送端是根据所述路由源节点对应的本地模块确定的;When the enable control signal of the temporary circuit is a first signal, receive the transmission data sent by the data sending end along the temporary circuit, and the first signal is used to indicate that the transmission data is allowed to be sent to the data receiving end , the data sending end is determined according to the local module corresponding to the routing source node;

在确定所述数据发送端将所述使能控制信号设置为第二信号的情况下,停止接收所述数据发送端发送的所述传输数据,对所述传输数据进行校验,所述第二信号用于表征传输结束,不再允许向所述数据接收端发送所述传输数据。When it is determined that the data sending end sets the enable control signal as a second signal, stop receiving the transmission data sent by the data sending end, check the transmission data, and the second The signal is used to indicate the end of the transmission, and the transmission data is no longer allowed to be sent to the data receiving end.

根据本发明提供的一种数据传输方法,所述对所述传输数据进行校验,包括:According to a data transmission method provided by the present invention, the verification of the transmission data includes:

对所述传输数据进行循环冗余CRC校验和超时校验;Performing a cyclic redundancy CRC check and a timeout check on the transmitted data;

所述对所述传输数据进行超时校验,包括:The timeout check on the transmitted data includes:

根据所述数据发送端发送所述传输数据的第一时间、停止接收所述传输数据的第二时间和预设时间阈值,对所述传输数据进行超时校验。Perform timeout check on the transmission data according to the first time when the data sending end sends the transmission data, the second time when the transmission data stops receiving, and a preset time threshold.

根据本发明提供的一种数据传输方法,所述方法,还包括:According to a data transmission method provided by the present invention, the method further includes:

向所述数据发送端发送第三信号,所述第三信号为解锁所述临时电路的信号。sending a third signal to the data sending end, where the third signal is a signal for unlocking the temporary circuit.

本发明还提供一种数据传输系统,包括:电路锁定模块、第一发送模块以及传输控制模块;The present invention also provides a data transmission system, including: a circuit locking module, a first sending module, and a transmission control module;

所述电路锁定模块,用于在确定接收到数据接收端发送的锁定信号的情况下,锁定临时电路,所述锁定信号用于表征允许锁定所述临时电路,所述临时电路为基于路由路径搭建而成的,所述路由路径为将路由包从路由源节点路由到路由目标节点的路径,所述路由源节点和所述路由目标节点均是根据至少二维网格连接的片上网络中的每个网络节点连接的本地模块确定的,所述路由包是由所述路由源节点产生的;The circuit locking module is configured to lock the temporary circuit when it is determined that the locking signal sent by the data receiving end is received, the locking signal is used to indicate that the temporary circuit is allowed to be locked, and the temporary circuit is built based on a routing path The routing path is a path for routing a routing packet from a routing source node to a routing target node, and each of the routing source node and the routing target node is connected according to at least a two-dimensional grid. determined by a local module connected to a network node, and the routing packet is generated by the routing source node;

所述第一发送模块,用于将所述临时电路的使能控制信号设置为第一信号,并将传输数据沿所述临时电路发送给所述数据接收端,所述第一信号用于表征允许向所述数据接收端发送所述传输数据,所述数据接收端是根据所述路由目标节点对应的本地模块确定的;The first sending module is configured to set the enable control signal of the temporary circuit as a first signal, and send the transmission data to the data receiving end along the temporary circuit, and the first signal is used to represent Allowing to send the transmission data to the data receiving end, the data receiving end is determined according to the local module corresponding to the routing target node;

所述传输控制模块,用于停止向所述数据接收端发送所述传输数据,以供所述数据接收端对所述传输数据进行校验。The transmission control module is configured to stop sending the transmission data to the data receiving end, so that the data receiving end can verify the transmission data.

本发明还提供一种数据传输系统,包括:第二发送模块、第一接收模块以及校验模块;The present invention also provides a data transmission system, including: a second sending module, a first receiving module, and a verification module;

所述第二发送模块,用于向数据发送端发送锁定信号,以供所述数据发送端根据所述锁定信号锁定临时电路,所述锁定信号用于表征允许锁定所述临时电路,所述临时电路为基于路由路径搭建而成的,所述路由路径为将路由包从路由源节点路由到路由目标节点的路径,所述路由源节点和所述路由目标节点均是根据至少二维网格连接的片上网络中的每个网络节点连接的本地模块确定的,所述路由包是由所述路由源节点产生的;The second sending module is configured to send a locking signal to the data sending end, so that the data sending end can lock the temporary circuit according to the locking signal, and the locking signal is used to indicate that the temporary circuit is allowed to be locked, and the temporary circuit is locked. The circuit is built based on a routing path, the routing path is a path for routing a routing packet from a routing source node to a routing target node, and the routing source node and the routing target node are connected according to at least a two-dimensional grid Determined by the local module connected to each network node in the on-chip network, the routing packet is generated by the routing source node;

所述第一接收模块,用于在所述临时电路的使能控制信号为第一信号的情况下,接收数据发送端沿所述临时电路发送的传输数据,所述第一信号用于表征允许向数据接收端发送所述传输数据,所述数据发送端是根据所述路由源节点对应的本地模块确定的;The first receiving module is configured to receive the transmission data sent by the data sending end along the temporary circuit when the enabling control signal of the temporary circuit is a first signal, and the first signal is used to represent the enabling control signal of the temporary circuit sending the transmission data to a data receiving end, where the data sending end is determined according to the local module corresponding to the routing source node;

所述校验模块,用于在确定所述数据发送端将所述使能控制信号设置为第二信号的情况下,停止接收所述数据发送端发送的所述传输数据,对所述传输数据进行校验,所述第二信号用于表征传输结束,不再允许向所述数据接收端发送所述传输数据。The verification module is configured to stop receiving the transmission data sent by the data transmission end when it is determined that the data transmission end sets the enable control signal as a second signal, and perform a check on the transmission data Checking is performed, the second signal is used to indicate the end of the transmission, and the transmission data is no longer allowed to be sent to the data receiving end.

本发明还提供一种电子设备,包括处理器和存储有计算机程序的存储器,所述处理器执行所述程序时实现如上述任一种所述数据传输方法。The present invention also provides an electronic device, including a processor and a memory storing a computer program. When the processor executes the program, any one of the above-mentioned data transmission methods is implemented.

本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述数据传输方法。The present invention also provides a non-transitory computer-readable storage medium, on which a computer program is stored, and when the computer program is executed by a processor, any one of the above-mentioned data transmission methods can be realized.

本发明还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述数据传输方法。The present invention also provides a computer program product, including a computer program. When the computer program is executed by a processor, any one of the data transmission methods described above is implemented.

本发明提供的数据传输方法及系统,基于片上网络建立路由源节点到路由目标节点的路由路径,并将该路由路径搭建为临时电路,基于该临时电路执行数据传输,其低延迟性和确定的资源提供了多路数据并行实时传输的大带宽和低延迟需求,提高了数据传输效率。The data transmission method and system provided by the present invention establishes a routing path from a routing source node to a routing target node based on an on-chip network, and builds the routing path as a temporary circuit, and performs data transmission based on the temporary circuit, which has low delay and deterministic Resources provide the large bandwidth and low latency requirements for parallel real-time transmission of multi-channel data, improving data transmission efficiency.

附图说明Description of drawings

为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。In order to more clearly illustrate the present invention or the technical solutions in the prior art, the accompanying drawings that need to be used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the accompanying drawings in the following description are the present invention. For some embodiments of the invention, those skilled in the art can also obtain other drawings based on these drawings without creative effort.

图1是本发明提供的数据传输方法的流程示意图之一;Fig. 1 is one of the schematic flow charts of the data transmission method provided by the present invention;

图2是本发明提供的数据传输方法的流程示意图之二;Fig. 2 is the second schematic flow diagram of the data transmission method provided by the present invention;

图3是本发明提供的数据传输方法的流程示意图之三;Fig. 3 is the third schematic flow diagram of the data transmission method provided by the present invention;

图4是本发明提供的数据传输方法的流程示意图之四;Fig. 4 is the fourth schematic flow diagram of the data transmission method provided by the present invention;

图5是本发明提供的二维网格连接的片上网络的结构示意图;Fig. 5 is a schematic structural diagram of a network-on-chip connected by a two-dimensional grid provided by the present invention;

图6是本发明提供的二维网格连接的片上网络的局部放大示意图;FIG. 6 is a partially enlarged schematic diagram of a two-dimensional grid-connected network-on-chip provided by the present invention;

图7是本发明提供的连接外套的结构示意图;Fig. 7 is a schematic structural view of the connection jacket provided by the present invention;

图8是本发明提供的数据传输系统的结构示意图之一;Fig. 8 is one of the schematic structural diagrams of the data transmission system provided by the present invention;

图9是本发明提供的数据传输系统的结构示意图之二;Fig. 9 is the second structural diagram of the data transmission system provided by the present invention;

图10是本发明提供的电子设备的实体结构示意图。Fig. 10 is a schematic diagram of the physical structure of the electronic device provided by the present invention.

具体实施方式Detailed ways

为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。In order to make the purpose, technical solutions and advantages of the present invention clearer, the technical solutions in the present invention will be clearly and completely described below in conjunction with the accompanying drawings in the present invention. Obviously, the described embodiments are part of the embodiments of the present invention , but not all examples. Based on the embodiments of the present invention, all other embodiments obtained by persons of ordinary skill in the art without creative efforts fall within the protection scope of the present invention.

图1是本发明提供的数据传输方法的流程示意图之一,如图1所示,方法包括:Fig. 1 is one of the flow diagrams of the data transmission method provided by the present invention, as shown in Fig. 1, the method includes:

步骤110,在确定接收到数据接收端发送的锁定信号的情况下,锁定临时电路,所述锁定信号用于表征允许锁定所述临时电路,所述临时电路为基于路由路径搭建而成的,所述路由路径为将路由包从路由源节点路由到路由目标节点的路径,所述路由源节点和所述路由目标节点均是根据至少二维网格连接的片上网络中的每个网络节点连接的本地模块确定的,所述路由包是由所述路由源节点产生的;Step 110, if it is determined that the locking signal sent by the data receiving end is received, locking the temporary circuit, the locking signal is used to indicate that the temporary circuit is allowed to be locked, the temporary circuit is built based on the routing path, and the The routing path is a path for routing a routing packet from a routing source node to a routing target node, and the routing source node and the routing target node are connected to each network node in an on-chip network connected according to at least a two-dimensional grid Determined by the local module, the routing packet is generated by the routing source node;

步骤120,将所述临时电路的使能控制信号设置为第一信号,并将传输数据沿所述临时电路发送给所述数据接收端,所述第一信号用于表征允许向所述数据接收端发送所述传输数据,所述数据接收端是根据所述路由目标节点对应的本地模块确定的;Step 120: Set the enable control signal of the temporary circuit as a first signal, and send the transmission data to the data receiving end along the temporary circuit, and the first signal is used to indicate that the data is allowed to receive The terminal sends the transmission data, and the data receiving terminal is determined according to the local module corresponding to the routing target node;

步骤130,停止向所述数据接收端发送所述传输数据,以供所述数据接收端对所述传输数据进行校验。Step 130, stop sending the transmission data to the data receiving end, so that the data receiving end can verify the transmission data.

需要说明的是,上述方法的执行主体可以是数据发送端。It should be noted that the execution subject of the above method may be the data sending end.

可选地,该锁定信号可以具体为允许锁定所述临时电路的信号。在数据发送端确定接收到数据接收端发送的该锁定信号的情况下,锁定数据发送端到数据接收端之间进行数据传输的临时电路。Optionally, the locking signal may specifically be a signal allowing locking of the temporary circuit. When the data sending end determines that the locking signal sent by the data receiving end is received, the temporary circuit for data transmission between the data sending end and the data receiving end is locked.

可选地,该临时电路可以具体为将路由路径临时锁定成电路后得到的,该路由路径可以具体为路由包从路由源节点路由到路由目标节点所经过的路径。该至少二维网格连接的片上网络中的每个网络节点均有一个地址编码,该路由源节点可以具体为与至少二维网格连接的片上网络中的每个网络节点中,产生数据传输需求的网络节点,更具体为源编码地址对应的网络节点,该数据传输需求可以具体包括传输数据传输的目标编码地址、收或发等传输控制和传输数据的数据性质。该路由目标节点可以具体为至少二维网格连接的片上网络中的每个网络节点中,与目标编码地址一致的网络节点。Optionally, the temporary circuit may be specifically obtained by temporarily locking a routing path into a circuit, and the routing path may specifically be a path through which a routing packet is routed from a routing source node to a routing target node. Each network node in the on-chip network connected to the at least two-dimensional grid has an address code, and the routing source node can be specifically for each network node in the on-chip network connected to the at least two-dimensional grid to generate data transmission The required network node is more specifically the network node corresponding to the source code address. The data transmission requirement may specifically include the target code address of the data transmission, transmission control such as receiving or sending, and the data nature of the transmitted data. The routing target node may specifically be a network node in each network node in at least a two-dimensional grid-connected network-on-a-chip that is consistent with the target coded address.

可选地,该使能控制信号可以具体为比特信号,其可以具体用于控制该临时电路的锁定与否。具体地,当临时电路锁定,且数据发送端将该使能控制信号设置为第一信号时,数据发送端可以将传输数据沿该临时电路发送给数据接收端。该第一信号可以具体为高电平信号,例如用一个或多个数字“1”代表该高电平信号。该传输数据中可以具体包括使能控制信号,利用该使能控制信号标注传输数据的有效性。Optionally, the enable control signal may be specifically a bit signal, which may be specifically used to control whether the temporary circuit is locked or not. Specifically, when the temporary circuit is locked and the data sending end sets the enable control signal as the first signal, the data sending end can send the transmission data to the data receiving end along the temporary circuit. The first signal may specifically be a high-level signal, for example, one or more numbers "1" are used to represent the high-level signal. The transmission data may specifically include an enabling control signal, and the enabling control signal is used to mark the validity of the transmission data.

可选地,该数据发送端可以为路由源节点对应的本地模块,该数据接收端可以具体为路由目标节点对应的本地模块。即数据发送端在使能控制信号的控制下开始沿临时电路发送传输数据给数据接收端。Optionally, the data sending end may be a local module corresponding to the routing source node, and the data receiving end may specifically be a local module corresponding to the routing target node. That is, the data sending end starts to send transmission data to the data receiving end along the temporary circuit under the control of the enable control signal.

可选地,数据发送端停止向数据接收端发送传输数据,并由数据接收端对接收到的数据发送端发送的传输数据进行校验,确定该传输数据是否通过校验。Optionally, the data sending end stops sending transmission data to the data receiving end, and the data receiving end checks the received transmission data sent by the data sending end to determine whether the transmission data passes the verification.

本发明提供的数据传输方法,基于片上网络建立路由源节点到路由目标节点的路由路径,并将该路由路径搭建为临时电路,基于该临时电路执行数据传输,其低延迟性和确定的资源提供了多路数据并行实时传输的大带宽和低延迟需求,提高了数据传输效率。The data transmission method provided by the present invention establishes a routing path from a routing source node to a routing target node based on an on-chip network, and builds the routing path as a temporary circuit, and performs data transmission based on the temporary circuit. Its low delay and deterministic resource provision It meets the large bandwidth and low latency requirements of parallel real-time transmission of multi-channel data, and improves the efficiency of data transmission.

进一步地,在一个实施例中,所述停止向所述数据接收端发送所述传输数据之前,所述方法,还可以具体包括:Further, in an embodiment, before the stopping of sending the transmission data to the data receiving end, the method may further specifically include:

将所述使能控制信号设置为第二信号,所述第二信号用于表征传输结束,不再允许向所述数据接收端发送所述传输数据。The enable control signal is set as a second signal, the second signal is used to indicate the end of the transmission, and the transmission data is no longer allowed to be sent to the data receiving end.

可选地,当数据发送端结束传输数据的发送后,数据发送端将临时电路的使能控制信号设置为第二信号,以停止向数据接收端发送传输数据。整个数据传输过程中,数据接收端接收到的有效的传输数据即为第一信号到第二信号之间的数据。Optionally, after the data sending end finishes sending the transmission data, the data sending end sets the enable control signal of the temporary circuit as the second signal, so as to stop sending the transmission data to the data receiving end. During the entire data transmission process, the effective transmission data received by the data receiving end is the data between the first signal and the second signal.

例如,使能控制信号为第一信号(例如高电平信号)时,数据发送端开始向数据接收端发送传输数据,当数据发送端结束对传输数据的发送后,将该使能控制信号设置为第二信号,该第二信号可以为低电平信号,以停止向数据接收端发送传输数据。For example, when the enabling control signal is the first signal (such as a high-level signal), the data sending end starts to send transmission data to the data receiving end, and when the data sending end finishes sending the transmission data, the enabling control signal is set to is a second signal, and the second signal may be a low-level signal to stop sending transmission data to the data receiving end.

进一步地,在一个实施例中,在所述传输数据通过超时校验和循环冗余CRC校验的情况下,根据接收到的所述数据接收端发送的第三信号,解锁所述临时电路,所述第三信号为解锁所述临时电路的信号;Further, in one embodiment, when the transmission data passes the timeout check and the cyclic redundancy CRC check, the temporary circuit is unlocked according to the received third signal sent by the data receiving end, The third signal is a signal for unlocking the temporary circuit;

在所述传输数据未通过所述超时校验或CRC校验的情况下,生成失败报告,并根据接收到的所述第三信号解锁所述临时电路;If the transmission data fails the timeout check or CRC check, generate a failure report, and unlock the temporary circuit according to the received third signal;

其中,所述校验包括所述超时校验和所述CRC校验。Wherein, the check includes the timeout check and the CRC check.

可选地,在数据发送端停止向数据接收端发送传输数据的情况下,数据接收端对接收到的传输数据进行校验,并判断该传输数据是否通过该校验。若数据接收端确定该传输数据通过该校验,则发送第三信号给数据发送端。Optionally, when the data sending end stops sending transmission data to the data receiving end, the data receiving end checks the received transmission data and judges whether the transmission data passes the check. If the data receiving end determines that the transmission data passes the verification, then send a third signal to the data sending end.

数据发送端接收到的该数据接收端发送的第三信号后,解锁该临时电路,释放资源,该第三信号可以具体为解锁该临时电路的信号,该信号可以具体由一个或多个比特组成。After receiving the third signal sent by the data receiving end, the data sending end unlocks the temporary circuit and releases resources. The third signal may specifically be a signal for unlocking the temporary circuit, and the signal may specifically consist of one or more bits. .

若数据接收端确定该传输数据通过该校验(包括超时校验和CRC校验),则解锁该临时电路,释放资源。If the data receiving end determines that the transmission data passes the check (including the timeout check and CRC check), the temporary circuit is unlocked and the resources are released.

如果数据接收端确定该传输数据未通过该超时校验或CRC校验,则由于数据接收端本身就是路由源节点,由数据接收端确认本次数据传输失败,并生成失败报告,解锁该临时电路。If the data receiving end determines that the transmitted data does not pass the timeout check or CRC check, since the data receiving end itself is the routing source node, the data receiving end will confirm that the data transmission has failed, and generate a failure report to unlock the temporary circuit .

本发明提供的数据传输方法,基于片上网络建立路由源节点到路由目标节点的路由路径,并将该路由路径搭建为临时电路,基于该临时电路执行数据传输,其低延迟性和确定的资源提供了多路数据并行实时传输的大带宽和低延迟需求,提高了数据传输效率,同时能够在传输数据传输完成后解锁该临时电路,释放资源,避免资源占用所导致的拥堵。The data transmission method provided by the present invention establishes a routing path from a routing source node to a routing target node based on an on-chip network, and builds the routing path as a temporary circuit, and performs data transmission based on the temporary circuit. Its low delay and deterministic resource provision It meets the large bandwidth and low latency requirements of parallel real-time transmission of multi-channel data, improves data transmission efficiency, and can unlock the temporary circuit after the transmission of data transmission is completed, releasing resources and avoiding congestion caused by resource occupation.

图2是本发明提供的数据传输方法的流程示意图之二,如图2所示,包括:Fig. 2 is the second schematic flow diagram of the data transmission method provided by the present invention, as shown in Fig. 2, including:

步骤210,向数据发送端发送锁定信号,以供所述数据发送端根据所述锁定信号锁定临时电路,所述锁定信号用于表征允许锁定所述临时电路,所述临时电路为基于路由路径搭建而成的,所述路由路径为将路由包从路由源节点路由到路由目标节点的路径,所述路由源节点和所述路由目标节点均是根据至少二维网格连接的片上网络中的每个网络节点连接的本地模块确定的,所述路由包是由所述路由源节点产生的;Step 210, sending a locking signal to the data sending end for the data sending end to lock the temporary circuit according to the locking signal, the locking signal is used to indicate that the temporary circuit is allowed to be locked, and the temporary circuit is built based on a routing path The routing path is a path for routing a routing packet from a routing source node to a routing target node, and each of the routing source node and the routing target node is connected according to at least a two-dimensional grid. determined by a local module connected to a network node, and the routing packet is generated by the routing source node;

步骤220,在所述临时电路的使能控制信号为第一信号的情况下,接收数据发送端沿所述临时电路发送的传输数据,所述第一信号用于表征允许向数据接收端发送所述传输数据,所述数据发送端是根据所述路由源节点对应的本地模块确定的;Step 220, when the enable control signal of the temporary circuit is a first signal, receive the transmission data sent by the data sending end along the temporary circuit, and the first signal is used to indicate that the data is allowed to be sent to the data receiving end The transmission data, the data sending end is determined according to the local module corresponding to the routing source node;

步骤230,在确定所述数据发送端将所述使能控制信号设置为第二信号的情况下,停止接收所述数据发送端发送的所述传输数据,对所述传输数据进行校验,所述第二信号用于表征传输结束,不再允许向所述数据接收端发送所述传输数据。Step 230, when it is determined that the data sending end sets the enable control signal as the second signal, stop receiving the transmission data sent by the data sending end, and verify the transmission data, and The second signal is used to indicate the end of the transmission, and the transmission data is no longer allowed to be sent to the data receiving end.

需要说明的是,上述方法的执行主体可以是数据接收端。It should be noted that, the execution subject of the above method may be a data receiving end.

可选地,数据接收端向数据发送端发送锁定信号,数据发送端在接收到该锁定信号后,锁定数据发送端与数据接收端之间进行数据传输的临时电路。Optionally, the data receiving end sends a locking signal to the data sending end, and after receiving the locking signal, the data sending end locks the temporary circuit for data transmission between the data sending end and the data receiving end.

该临时电路可以具体为将路由路径临时锁定成电路后得到的,该路由路径可以具体为路由包从路由源节点路由到路由目标节点所经过的路径。该至少二维网格连接的片上网络中的每个网络节点均有一个地址编码,该路由源节点可以具体为至少二维网格连接的片上网络中的每个网络节点中,产生数据传输需求的网络节点,更具体为源编码地址对应的网络节点,该数据传输需求可以具体包括传输数据传输的目标编码地址、收或发等传输控制和传输数据的数据性质。该路由目标节点可以具体为与至少二维网格连接的片上网络中的每个网络节点中,与目标编码地址一致的网络节点。The temporary circuit may specifically be obtained by temporarily locking a routing path into a circuit, and the routing path may specifically be a path through which a routing packet is routed from a routing source node to a routing target node. Each network node in the at least two-dimensional grid-connected network-on-chip has an address code, and the routing source node can be specifically for each network node in the at least two-dimensional grid-connected network-on-chip, generating data transmission requirements The network node, more specifically the network node corresponding to the source code address, the data transmission requirements may specifically include the target code address of the transmission data transmission, transmission control such as receiving or sending, and the data nature of the transmitted data. The routing target node may specifically be a network node consistent with the target coded address among each network node in the network-on-chip connected to the at least two-dimensional grid.

可选地,该使能控制信号可以具体为比特信号,其可以具体用于控制该临时电路的锁定与否。具体地,当临时电路锁定,且该使能控制信号为第一信号时,数据接收端可以接收到数据发送端沿该临时电路发送的传输数据。当该使能控制信号为第二信号时,此时临时电路解锁,资源释放,数据接收端无法接收数据发送端发送的传输数据。该第一信号可以具体为高电平信号,例如用一个或多个数字“1”代表该高电平信号。该第二信号可以具体为低电平信号,例如用一个或多个数字“0”表示该低电平信号。该传输数据中可以具体包括使能控制信号,利用该使能控制信号标注传输数据的有效性。Optionally, the enable control signal may be specifically a bit signal, which may be specifically used to control whether the temporary circuit is locked or not. Specifically, when the temporary circuit is locked and the enabling control signal is the first signal, the data receiving end can receive the transmission data sent along the temporary circuit by the data sending end. When the enabling control signal is the second signal, the temporary circuit is unlocked and resources are released, and the data receiving end cannot receive the transmission data sent by the data sending end. The first signal may specifically be a high-level signal, for example, one or more numbers "1" are used to represent the high-level signal. The second signal may specifically be a low-level signal, for example, one or more numbers "0" are used to represent the low-level signal. The transmission data may specifically include an enabling control signal, and the enabling control signal is used to mark the validity of the transmission data.

可选地,该数据接收端可以具体为路由目标节点对应的本地模块,该数据发送端可以为路由源节点对应的本地模块,即数据接收端在使能控制信号的控制下开始接收数据发送端沿临时电路发送的传输数据。Optionally, the data receiving end may specifically be a local module corresponding to the routing target node, and the data sending end may be a local module corresponding to the routing source node, that is, the data receiving end starts to receive the data sending end under the control of the enabling control signal Transmission data sent along a temporary circuit.

可选地,数据接收端在确定数据发送端将临时电路的使能控制信号设置为第二信号的情况下,确定数据发送端停止发送传输数据,此时,数据接收端停止接收数据发送端发送的传输数据,并对接收到的数据发送端发送的传输数据进行校验,确定该传输数据是否通过校验。Optionally, when the data receiving end determines that the data sending end sets the enable control signal of the temporary circuit as the second signal, it determines that the data sending end stops sending transmission data, and at this time, the data receiving end stops receiving the data sending end sending The transmission data, and verify the transmission data sent by the received data sender, and determine whether the transmission data passes the verification.

本发明提供的数据传输方法,基于片上网络建立路由源节点到路由目标节点的路由路径,并将该路由路径搭建为临时电路,基于该临时电路执行数据传输,其低延迟性和确定的资源提供了多路数据并行实时传输的大带宽和低延迟需求,提高了数据传输效率。The data transmission method provided by the present invention establishes a routing path from a routing source node to a routing target node based on an on-chip network, and builds the routing path as a temporary circuit, and performs data transmission based on the temporary circuit. Its low delay and deterministic resource provision It meets the large bandwidth and low latency requirements of parallel real-time transmission of multi-channel data, and improves the efficiency of data transmission.

进一步地,在一个实施例中,所述对所述传输数据进行校验,可以具体包括:Further, in an embodiment, the verifying the transmission data may specifically include:

对所述传输数据进行循环冗余CRC校验和超时校验;Performing a cyclic redundancy CRC check and a timeout check on the transmitted data;

所述对所述传输数据进行超时校验,包括:The timeout check on the transmitted data includes:

根据所述数据发送端发送所述传输数据的第一时间、停止接收所述传输数据的第二时间和预设时间阈值,对所述传输数据进行超时校验。Perform timeout check on the transmission data according to the first time when the data sending end sends the transmission data, the second time when the transmission data stops receiving, and a preset time threshold.

可选地,数据接收端对接收到的传输数据进行校验,并判断该传输数据是否通过该校验。Optionally, the data receiving end checks the received transmission data, and judges whether the transmission data passes the check.

该校验可以具体包括数据接收端对该传输数据进行CRC校验和超时校验。The checking may specifically include performing a CRC check and a timeout check on the transmitted data by the data receiving end.

该CRC校验的目的是当需要对接收到的传输数据查错时,数据发送端按照预设协议完成CRC编码得到传输数据,数据接收端按照预设协议对接收到的传输数据进行CRC解码查错,如有错误,数据接收端报告CRC校验失败(未通过)。The purpose of the CRC check is that when it is necessary to check the received transmission data for errors, the data sending end completes the CRC encoding according to the preset protocol to obtain the transmission data, and the data receiving end performs CRC decoding on the received transmission data according to the preset protocol to check for errors , if there is an error, the data receiving end reports that the CRC check failed (failed).

该超时校验可以具体通过数据发送端发送传输数据的第一时间、停止接收传输数据的第二时间和预设时间阈值对传输数据进行的超时校验,该预设时间阈值可以具体是根据路由源节点设定在开始路由时设置的超时计数器,启动倒计时,记录的数据传输时间,该数据传输时间可以具体包括数据发送端发送传输数据的第一时间以及数据接收端停止接收传输数据的第二时间,通过将该数据传输时间与预设时间阈值进行对比,若该数据传输时间大于该预设时间阈值,则确定该传输数据未通过该超时校验,反之则通过该超时校验。The timeout check can specifically perform a timeout check on the transmission data through the first time when the data sender sends the transmission data, the second time when the transmission data is stopped receiving the transmission data, and the preset time threshold. The preset time threshold can be specifically based on the route The source node sets the timeout counter set when starting the route, starts the countdown, and records the data transmission time. The data transmission time can specifically include the first time when the data sending end sends the transmission data and the second time when the data receiving end stops receiving the transmission data. Time, by comparing the data transmission time with the preset time threshold, if the data transmission time is greater than the preset time threshold, it is determined that the transmitted data has not passed the timeout check, otherwise the timeout check has passed.

传输异常:两种情况,一是未能完成传输导致超时、二是CRC指示传输出错,此时将错误报告给由路由源节点,路由源节点删除此临时电路,并告知传输发起模块(即路由目标节点对应的本地模块)。Transmission abnormality: two cases, one is failure to complete the transmission, resulting in timeout, and the other is CRC indication transmission error, at this time, the error is reported to the routing source node, and the routing source node deletes this temporary circuit, and informs the transmission initiating module (i.e. routing local module corresponding to the target node).

进一步地,在一个实施例中,所述方法,还可以具体包括:Further, in one embodiment, the method may also specifically include:

向所述数据发送端发送第三信号,所述第三信号为解锁所述临时电路的信号。sending a third signal to the data sending end, where the third signal is a signal for unlocking the temporary circuit.

可选地,若数据接收端确定该传输数据通过该校验(包括超时校验和CRC校验),则发送第三信号给数据发送端,以供数据发送端根据接收到的该数据接收端发送的第三信号后,解锁该临时电路,释放资源,该第三信号可以具体为解锁该临时电路的信号,该信号可以具体由一个或多个比特组成。Optionally, if the data receiving end determines that the transmission data passes the verification (including timeout verification and CRC verification), then send a third signal to the data sending end, for the data sending end After the third signal is sent, the temporary circuit is unlocked and resources are released. The third signal may specifically be a signal for unlocking the temporary circuit, and the signal may specifically consist of one or more bits.

可选地,若数据接收端确定该传输数据通过该校验(包括超时校验或CRC校验),此时数据接收端仍旧会向数据发送端发送第三信号,数据接收端根据该第三信号,解锁临时电路,释放资源。由于数据接收端本身就是路由源节点,由数据接收端确认本次数据传输失败,并生成失败报告。Optionally, if the data receiving end determines that the transmission data passes the verification (including timeout verification or CRC verification), the data receiving end will still send a third signal to the data sending end at this time, and the data receiving end will send a third signal according to the third signal. Signal, unlock temporary circuit, release resources. Since the data receiving end itself is the routing source node, the data receiving end confirms that the data transmission fails and generates a failure report.

本发明中,至少二维网格连接的片上网络可以具体为异构多核实时的片上系统SoC的片上网络。该片上网络可以同时支持多个并行传输,该片上网络可以具体是利用至少是二维的网格拓扑连接的片上网络构架。In the present invention, the on-chip network connected by at least two-dimensional grid may specifically be an on-chip network of a heterogeneous multi-core real-time system on chip SoC. The network-on-chip can support multiple parallel transmissions at the same time, and the network-on-chip can specifically be a network-on-chip architecture connected by at least a two-dimensional grid topology.

路由源节点对应的本地模块可以具体用于将路由包传输到路由目标节点,该本地模块可以具体是功能模块,也可以是存储模块,还可以是输入输出接口。该路由包可以具体由路由源节点产生,其可以具体包括路由源节点标识、路由目标节点标识和数据传输操作描述。The local module corresponding to the routing source node can be specifically used to transmit the routing packet to the routing target node, and the local module can be specifically a function module, a storage module, or an input/output interface. The routing packet may be specifically generated by the routing source node, and may specifically include a routing source node identifier, a routing target node identifier, and a data transmission operation description.

该本地模块可以具体通过该节点的连接外套wrapper连接到片上网络中的其他各个网络节点。The local module may be specifically connected to other network nodes in the network-on-chip through the connection wrapper of the node.

需要说明的是,该连接外套的网络侧按照片上网络的电路和协议设计,该连接外套的模块侧基于可重构的电路和协议配置,通过用户的配置完成片上网络和模块侧的电路的功能相匹配。It should be noted that the network side of the connection jacket is designed according to the circuit and protocol of the network in the photo, and the module side of the connection jacket is based on reconfigurable circuit and protocol configuration, and the functions of the network on chip and the circuit on the module side are completed through user configuration match.

可以具体通过将与片上网络的各个网络节点连接的本地模块作为节点,将所有网络设备对应的节点具体划分为路由源节点、路由目标节点和中间节点。The nodes corresponding to all network devices may be specifically divided into routing source nodes, routing target nodes, and intermediate nodes by using local modules connected to each network node of the network on chip as nodes.

本地模块对应的每一个节点都有一个唯一标识,其可以具体连接的片上网络中的网络节点的地址确定,该路由源节点标识可以具体为与路由源节点连接的网络节点的地址,该路由目标节点标识可以具体为与路由目标节点连接的网络节点的地址。Each node corresponding to the local module has a unique identifier, which can be determined by the address of the network node in the connected on-chip network. The routing source node identifier can be specifically the address of the network node connected to the routing source node. The routing target The node identifier may specifically be an address of a network node connected to the routing target node.

根据路由源节点标识对应的地址和路由目标节点标识对应的地址,确定路由包从路由源节点传输到路由目标节点的路由过程中所经过的节点,这些节点即是路由包从路由源节点传输到路由目标节点的路由路径。需要说明的是,每一步路由决策之后,将本节点(路由包到达并经过的节点)和入出路径端口记录进路由包中,在向下一节点传输路由包的同时将使用的路径锁定,成为了欲建立临时电路的一部分。According to the address corresponding to the routing source node identification and the corresponding address of the routing target node identification, determine the nodes that the routing packet passes through during the routing process from the routing source node to the routing target node. These nodes are the routing packets from the routing source node to the routing node. The routing path of the routing target node. It should be noted that after each step of routing decision-making, the node (the node that the routing packet arrives at and passes through) and the entry and exit path ports are recorded in the routing packet, and the path used is locked when the routing packet is transmitted to the next node, which becomes part of a temporary circuit to be built.

根据路由包从路由源节点传输至路由目标节点所经过的所有节点组成的路由路径,建立一个暂时的、沿路由路径的总线电路,即临时电路。According to the routing path formed by all the nodes through which the routing packet is transmitted from the routing source node to the routing target node, a temporary bus circuit along the routing path is established, that is, a temporary circuit.

从每个网络节点连接的本地模块中,确定产生路由包的传输需求的第一设备,将第一设备作为路由源节点,传输需求至少包括路由目标节点标识;From the local modules connected to each network node, determine the first device that generates the transmission requirement of the routing packet, use the first device as the routing source node, and the transmission requirement includes at least the routing target node identifier;

将路由目标节点标识对应的第二设备作为路由目标节点。The second device corresponding to the routing target node identifier is used as the routing target node.

本发明中,该路由源节点可以具体为与片上网络的各网络节点连接的本地模块中产生路由包传输需求的第一设备。该传输需求可以具体包括路由目标节点标识、发送或接收等传输控制和数据性质等。In the present invention, the routing source node may specifically be the first device that generates a routing packet transmission requirement in a local module connected to each network node of the on-chip network. The transmission requirements may specifically include routing target node identification, transmission control such as sending or receiving, data properties, and the like.

从与片上网络的各网络节点连接的目标设备中找到带有上述路由目标节点标识的第二设备,并将该第二设备作为路由目标节点。Find the second device with the above routing target node identifier from the target devices connected to each network node of the network-on-chip, and use the second device as the routing target node.

需要说明的是,片上网络中的任意网络节点所连的本地模块均可作为路由起点(即路由源节点),并由路由起点对应的本地模块的连接外套启动并建立动态路由。It should be noted that any local module connected to any network node in the network on chip can be used as the routing start point (ie, the routing source node), and the connection jacket of the local module corresponding to the routing starting point starts and establishes a dynamic route.

1,路由的目的是建立并临时锁定一个连接路由源节点到路由目标节点的数据传输电路;1. The purpose of routing is to establish and temporarily lock a data transmission circuit connecting the routing source node to the routing target node;

2,路由起点可以是数据发送端,也可以是数据接收端;2. The starting point of the route can be the data sending end or the data receiving end;

3,如果数据传输出错,由数据接收端报告接收错误,并向路由源节点发送异常;3. If there is an error in data transmission, the data receiving end will report the receiving error and send an exception to the routing source node;

4,如果路由起点是数据发送端,路由起点收到路由终点的锁定确认后立即开始发送数据;4. If the starting point of the route is the data sender, the starting point of the route will start sending data immediately after receiving the lock confirmation from the end point of the route;

5,如果路由终点是数据发送端,路由终点在发送锁定确认后立即开始发送数据;5. If the routing end point is the data sender, the routing end point will start sending data immediately after sending the lock confirmation;

6,路由起点定义超时检测参数,开始路由时设置超时计数器,启动倒计时,记时包括路由时间和数据传输时间,倒计时结束立即清除并释放该路由。该路由时间可以具体为路由包从路由源节点传输到路由目标节点的总时间。6. The starting point of the route defines the timeout detection parameters. When starting the route, set the timeout counter and start the countdown. The countdown includes the routing time and data transmission time. After the countdown ends, the route will be cleared and released immediately. The routing time may specifically be the total time for the routing packet to be transmitted from the routing source node to the routing target node.

需要说明的是,片上网络中的任意网络节点所连的本地模块均可作为路由中间节点(即中间节点)。It should be noted that any local module connected to any network node in the network-on-chip can be used as a routing intermediate node (ie, an intermediate node).

1,与路由中间节点的本地模块不参与数据传输,其相关的路由和数据传输仅由该节点的连接外套完成;1. The local module of the routing intermediate node does not participate in data transmission, and its related routing and data transmission are only completed by the connection jacket of the node;

2,每个路由节点(包括路由起点和路由终点)的连接外套,在空闲时利用连线向临近节点发送节点使用状态,保证临近节点保存有互相连接的节点的使用状态,用以提速路由,并减少锁死;2. The connection jacket of each routing node (including the routing start point and routing end point) uses the connection to send the node usage status to the adjacent nodes when it is idle, so as to ensure that the adjacent nodes save the usage status of the interconnected nodes to speed up routing. and reduce deadlock;

3,每个路由节点收到路由包后将本路由节点的地址和路由使用的端口添加到路由包内的路由信息表;3. After receiving the routing packet, each routing node adds the address of the routing node and the port used by the routing to the routing information table in the routing packet;

4,根据路由终点的地址和临近节点状态将路由包发送到一个临近节点,并临时锁定路由;4. Send the routing packet to an adjacent node according to the address of the routing end point and the state of the adjacent node, and temporarily lock the route;

5,如果该临近节点(除入口外的)其他三个节点都已占用,则向路由起点发送拒绝。5. If the other three nodes (except the entrance) of the adjacent node are occupied, send a rejection to the starting point of the route.

片上网络中的任意网络节点和所连的本地模块均可作为路由目标节点(即路由终点节点)。Any network node in the network on chip and the connected local module can be used as a routing target node (ie, a routing end node).

1,路由终点节点收到路由包,确认本节点是路由终点,立即启动终点协议;1. The routing terminal node receives the routing packet, confirms that this node is the routing terminal, and immediately starts the terminal protocol;

2,如可接受路由起点的要求,立即按路由原路返回锁定路由路径的操作;2. If the request of the starting point of the route is acceptable, immediately return to the operation of locking the route path according to the original route;

3,如不能接受路由起点的要求,例如路由终点正在传输数据,立即发送拒绝,按路由原路返回并释放路由路径。3. If the request from the starting point of the route cannot be accepted, for example, the end point of the route is transmitting data, immediately send a rejection, return according to the original route and release the routing path.

根据路由源节点标识和路由目标节点标识,确定将路由包从路由源节点传输到路由目标节点的路由路径,可以具体包括:According to the routing source node identifier and the routing destination node identifier, determining the routing path for transmitting the routing packet from the routing source node to the routing destination node may specifically include:

根据路由源节点标识中的源编码地址、路由目标节点标识中的目标编码地址和预设编码规则,确定路由源节点和路由目标节点之间的目标路由方向,源编码地址和目标编码地址均是根据预设编码规则确定的;According to the source coded address in the routing source node ID, the target coded address in the routing target node ID and the preset coding rules, determine the target routing direction between the routing source node and the routing target node. The source coded address and the target coded address are both Determined according to the preset coding rules;

根据目标路由方向,确定路由路径。Determine the routing path according to the target routing direction.

本发明中,该路由源编码地址可以具体为路由源节点标识中的路由源节点的地址,其可以具体是根据预设编码规则编码后得到的。In the present invention, the routing source encoded address may specifically be the address of the routing source node in the routing source node identifier, which may specifically be obtained after encoding according to a preset encoding rule.

该路由目标编码地址可以具体为路由目标节点标识中的路由目标节点的地址,其可以具体是根据预设编码规则编码后得到的。The routing target coded address may specifically be the address of the routing target node in the routing target node identifier, which may specifically be obtained after coding according to a preset coding rule.

该预设编码规则可以具体为按照节点之间的方位特征进行编码,得到各个节点(包括路由源节点、路由目标节点和中间节点)的地址。例如,路由源节点、路由目标节点和中间节点的地址包括两段编码,第一段编码地址是按照节点之间的东西方位进行编码得到的,第二段编码地址是按照节点之间的南北方位进行编码得到的,并由此编码指导路由,且该两段编码遵循为西小东大和北小南大的规则。The preset encoding rule may specifically be encoding according to the orientation characteristics between nodes to obtain addresses of each node (including routing source node, routing target node, and intermediate node). For example, the addresses of routing source node, routing destination node and intermediate node include two codes, the first coded address is coded according to the east-west orientation between nodes, and the second coded address is coded according to the north-south orientation between nodes It is obtained by encoding, and the routing is guided by this encoding, and the two segments of encoding follow the rules of Xixiaodongda and Beixiaonanda.

根据源编码地址和目标编码地址便可以知道路由源节点与路由目标节点之间的方位信息,根据该方位信息便可以确定路由源节点和路由目标节点之间的目标路由方向。The orientation information between the routing source node and the routing destination node can be known according to the source coded address and the destination coded address, and the destination routing direction between the routing source node and the routing destination node can be determined according to the location information.

在路由时,根据目标编码地址(即路由目标节点的地址)和当前节点(接收到路由包的节点)的地址比较,若目标编码地址中的第一段编码地址大于当前节点的地址中的第一段编码地址,则当前节点与路由目标节点的目标路由方向为东,向当前节点的东方向路由,反之向当前节点的西方向路由;若目标编码地址中的第二段编码地址大于当前节点的地址的第二段编码地址,则当前节点与路由目标节点的目标路由方向为南,向当前节点的南方向路由,反之向当前节点的北方向路由。When routing, compare the address of the target coded address (that is, the address of the routing target node) with the address of the current node (the node that receives the routing packet), if the first segment of the coded address in the target coded address is greater than the first segment in the address of the current node A coded address, the target routing direction between the current node and the routing target node is east, routing to the east of the current node, otherwise routing to the west of the current node; if the second coded address in the target coded address is greater than the current node The second segment of the coded address of the address, the target routing direction between the current node and the routing target node is south, routing to the south of the current node, and vice versa to the north of the current node.

沿目标路由方向,将路由包由路由源节点传输到路由目标节点,并确定路由源节点到路由目标节点之间的路由路径。Along the target routing direction, the routing packet is transmitted from the routing source node to the routing target node, and the routing path between the routing source node and the routing target node is determined.

根据目标路由方向,确定路由路径,可以具体包括:Determine the routing path according to the target routing direction, which may specifically include:

从源编码地址沿目标路由方向,向目标编码地址传输路由包,确定路由包经过的多个中间节点,中间节点为除路由源节点和路由目标节点外的其余节点,路由包还包括经过的多个中间节点的中间节点标识;From the source coded address to the target coded address, transmit the routing packet to the target coded address, and determine the multiple intermediate nodes that the routing packet passes through. The intermediate nodes are other nodes except the routing source node and the routing target node. The intermediate node identifier of an intermediate node;

根据路由源节点到路由包经过的第一个中间节点之间的第一步路由路径、路由包连续经过的多个中间节点之间的第二步路由路径和路由包经过的最后一个中间节点到路由目标节点之间的最后一步路由路径,确定路由路径;According to the first-step routing path between the routing source node and the first intermediate node that the routing packet passes through, the second-step routing path between multiple intermediate nodes that the routing packet passes through continuously, and the last intermediate node that the routing packet passes through to The last step of the routing path between the routing target nodes to determine the routing path;

其中,第一步路由路径是根据第一步路由方向确定的,第一步路由方向是根据源编码地址、第一个中间节点的中间节点标识中的编码地址和预设编码规则确定的;Wherein, the routing path of the first step is determined according to the routing direction of the first step, and the routing direction of the first step is determined according to the source coded address, the coded address in the intermediate node identifier of the first intermediate node and the preset coding rules;

第二步路由路径是根据第二步路由方向确定的,第二步路由方向是根据路由包连续经过的多个中间节点的中间节点标识中的编码地址和预设编码规则确定的;The second-step routing path is determined according to the second-step routing direction, and the second-step routing direction is determined according to the encoded addresses and preset encoding rules in the intermediate node identifiers of the multiple intermediate nodes that the routing packet passes through continuously;

最后一步路由路径是根据最后一步路由方向确定的,最后一步路由方向是根据最后一个中间节点的中间节点标识中的编码地址、目标编码地址和预设编码规则确定的。The routing path of the last step is determined according to the routing direction of the last step, and the routing direction of the last step is determined according to the encoded address in the intermediate node identifier of the last intermediate node, the target encoded address and the preset encoding rule.

本发明中,从路由源节点对应的源编码地址沿目标路由方向将路由包传输给目标编码地址对应的路由目标节点,并找到该路由过程路由包经过的各个中间节点。In the present invention, the routing packet is transmitted from the source coding address corresponding to the routing source node along the target routing direction to the routing target node corresponding to the target coding address, and each intermediate node that the routing packet passes through in the routing process is found.

需要说明的是,路由包每经过一个节点,路由包添加路径参数,包括:当前节点地址、入口和出口;将这三个参数加入路由包内,随着路由推进,路由包逐渐加长。路由目标节点接收到路由包后,由路由目标节点的目标设备拆包,并将路由包的内容,含数据传输信息和路由信息,记录在路由目标节点的连接外套内。It should be noted that each time the routing packet passes through a node, the routing packet adds path parameters, including: the current node address, entry and exit; these three parameters are added to the routing packet, and the routing packet gradually lengthens as the routing advances. After the routing target node receives the routing packet, the target device of the routing target node unpacks the packet, and records the content of the routing packet, including data transmission information and routing information, in the connection jacket of the routing target node.

本发明中,将路由过程中,路由包从路由源节点到第一步经过的中间节点之间的路由路径(即第一步路由路径)、路由包连续经过的多个中间节点之间的路由路径(即第二步路由路径,含多步)和路由包从最后一个中间节点到路由目标节点之间的路由路径(即最后一步路由路径)进行拼接,即可得到路由源节点到路由目标节点的路由路径。In the present invention, in the routing process, the routing path (i.e. the first step routing path) between the routing packet from the routing source node to the intermediate node that the first step passes through, the routing between a plurality of intermediate nodes that the routing packet passes through continuously The path (that is, the second-step routing path, including multiple steps) and the routing path between the routing packet from the last intermediate node to the routing target node (ie, the last step routing path) are spliced to obtain the routing source node to the routing target node routing path.

本发明中,该第一步路由路径可以具体根据第一步路由方向确定的,该第一步路由方向是根据源编码地址与第一个中间节点的编码地址(中间节点的编码地址是按照预设编码规则得到的)确定的。In the present invention, the routing path of the first step can be specifically determined according to the routing direction of the first step. Assuming that the encoding rule is obtained) is determined.

该第二步路由路径可以具体根据第二步路由方向确定的,该第二步路由方向是连续经过的多个中间节点的编码地址确定的。The second-step routing path may be specifically determined according to the second-step routing direction, and the second-step routing direction is determined by coded addresses of multiple intermediate nodes that pass through continuously.

该最后一步路由路径可以具体根据最后一步路由方向确定的,该最后一步路由方向是根据目标编码地址与最后一个中间节点的编码地址确定的。The last-step routing path may be specifically determined according to the last-step routing direction, and the last-step routing direction is determined according to the coded address of the target and the coded address of the last intermediate node.

在确定满足路由拒绝条件的情况下,拒绝将路由包从路由源节点传输到路由目标节点,路由拒绝条件包括路由目标节点的本地模块处于数据传输状态,或将路由包从路由源节点传输到路由目标节点经过的任意中间节点的所有出口均处于忙碌状态。When it is determined that the routing rejection condition is met, the routing packet is refused to be transmitted from the routing source node to the routing target node. The routing rejection condition includes that the local module of the routing target node is in the data transmission state, or the routing packet is transmitted from the routing source node to the routing node All exits of any intermediate nodes that the target node passes through are busy.

在路由过程中,若确定满足路由拒绝条件中的两种情况时,均可以拒绝将路由包从路由源节点传输到路由目标节点。第一种情况:路由目标节点的本地模块处于数据传输状态,其可以具体根据路由目标节点的目标设备是否正在传输数据确定;第二种情况:超级拥塞,即路由源节点与路由目标节点之间的任意可达中间节点均处于忙碌状态,例如,路由到任意一个中间节点时,该中间节点除入口外的其余几个出口均已被占用(有入无出)。During the routing process, if it is determined that the two conditions in the routing rejection condition are satisfied, the transmission of the routing packet from the routing source node to the routing target node may be refused. The first case: the local module of the routing target node is in the state of data transmission, which can be determined according to whether the target device of the routing target node is transmitting data; the second case: super congestion, that is, between the routing source node and the routing target node Any reachable intermediate node of , is in a busy state, for example, when routing to any intermediate node, the remaining several exits of the intermediate node except the entrance are already occupied (there is no entry but no exit).

根据路由源节点标识和路由目标节点标识,确定将路由包从路由源节点传输到路由目标节点的路由路径之后,方法,还可以具体包括:After the routing path for transmitting the routing packet from the routing source node to the routing target node is determined according to the routing source node identifier and the routing destination node identifier, the method may also specifically include:

判断路由目标节点是否在预设时间内接收到路由源节点传输的路由包;Judging whether the routing target node receives the routing packet transmitted by the routing source node within a preset time;

若确定路由目标节点在预设时间内未接收到路由包,则确定路由失败,并通过路由源节点删除路由路径。If it is determined that the routing target node has not received the routing packet within the preset time, it is determined that the routing has failed, and the routing path is deleted through the routing source node.

若确定数据传输在预设时间内未未完成,未解锁,则确定数据传输失败,并通过数据接收节点通知路由源节点删除路由路径。If it is determined that the data transmission has not been completed or unlocked within the preset time, it is determined that the data transmission has failed, and the data receiving node notifies the routing source node to delete the routing path.

该预设时间可以具体根据路由源节点设定的超时计数器进行设置。The preset time may be specifically set according to the timeout counter set by the routing source node.

路由源节点在发出路由包之前,综合考虑路由时间开销和数据传输时间开销,设定超时计数器,并开始倒计时。倒计时结束时,向路由源节点和路由经过的各个节点发起模块报告,若倒计时结束,路由目标节点还未收到该路由包,则此次路由发生超时错误,路由失败,并撤销锁定的路由路径,由路由源节点删除该路由路径。Before the routing source node sends out the routing packet, comprehensively consider the routing time overhead and the data transmission time overhead, set the timeout counter, and start counting down. When the countdown ends, a module report is initiated to the routing source node and each node that the routing passes through. If the countdown ends and the routing target node has not received the routing packet, a timeout error occurs in this routing, routing fails, and the locked routing path is revoked , the routing path is deleted by the routing source node.

需要说明的是,该临时电路还设有N个多播和广播功能。It should be noted that the temporary circuit also has N multicast and broadcast functions.

多播功能:传输数据传输的目标编码地址有多个(B个),是否多播可以通过设置控制比特Bout是否为1实现。Multicast function: there are multiple (B) target coded addresses for transmission data transmission, and whether multicasting can be realized by setting whether the control bit Bout is 1.

多播路由:路由过程中,每完成一个目标编码地址路由,就由目标编码地址向源编码地址锁定一次。同时清除在该路由包的该目标编码地址,直至清除了所有N个目标编码地址。Multicast routing: During the routing process, each time a target coded address route is completed, the target coded address is locked to the source coded address once. At the same time, the target coded address of the routing packet is cleared until all N target coded addresses are cleared.

多播数传:路由源节点的连接外套收到了N次锁定之后开始数据传输。Multicast data transmission: The connection jacket of the routing source node starts data transmission after receiving N locks.

多播解锁:路由源节点完成了数据发送之后,向所有锁定节点发送解锁信号。Multicast unlocking: After the routing source node finishes sending data, it sends an unlocking signal to all locked nodes.

多播异常:路由源节点设置并执行超时倒计时,多播传输没有CRC校验,只有超时校验。Multicast exception: The routing source node sets and executes a timeout countdown, and there is no CRC check for multicast transmission, only a timeout check.

该临时电路的广播功能可以用于整个系统的重构。The broadcast function of this temporary circuit can be used for the reconfiguration of the whole system.

广播定义:由一个节点(路由源节点)向所有节点传送同样数据。Broadcast definition: A node (routing source node) transmits the same data to all nodes.

广播路由:目标编码地址为全为1时,清除全网络的其他连接,将源路由设为数据发端,全片上网络的其他节点设为数据接收端,并且均连到路由源节点。Broadcast routing: When the target coded address is all 1, clear other connections in the entire network, set the source router as the data sender, and set other nodes of the whole network on chip as data receivers, and all of them are connected to the routing source node.

广播数据:数据发送端在开始路由的某个时钟之后自动开始发送数据,无需等待、无需锁定。Broadcast data: The data sender automatically starts sending data after a certain clock that starts routing, without waiting or locking.

广播异常:路由源节点设置并执行超时倒计时,当出现超时错误时,解锁所有广播锁定的节点。广播传输没有CRC校验。Broadcast exception: The routing source node sets and executes a timeout countdown, and when a timeout error occurs, all broadcast-locked nodes are unlocked. Broadcast transmissions do not have a CRC check.

临时锁定电路的流水线定义:分为路由期间的路由流水线和数据传输期间的数传流水线。Pipeline definition of temporary locking circuit: divided into routing pipeline during routing and data transmission pipeline during data transmission.

路由流水线:连接外套用于执行路由的电路的流水线pipeline:路由包经过每个节点消耗一个流水线步;Routing pipeline: the pipeline pipeline that connects the circuit that is used to perform routing: the routing packet consumes a pipeline step through each node;

数传流水线:连接外套用于数据传输电路的流水线pipeline。每个节点的数据通道电路可为组合电路,亦可为插入流水线电路;数据传输时,锁定的链路以组合逻辑为主,终点节点设有流水线。路由在反向锁定前,根据路由节点数自动决定在某个节点加入一级流水线。Data transmission pipeline: the pipeline that connects the jacket to the data transmission circuit. The data channel circuit of each node can be a combined circuit, or can be inserted into a pipeline circuit; during data transmission, the locked link is mainly combined logic, and the terminal node is equipped with a pipeline. Before the routing is reverse locked, it is automatically determined to join the first-level pipeline at a certain node according to the number of routing nodes.

临时电路的撤销锁定:数据传输结束后,使能控制信号降为零,路由源节点的连接外套(可能是数据发送方,也可能是数据接收方),在确认CRC检查正确后(可能是目标节点送来的CRC正确),发出撤销电路锁定的命令,沿线的所有节点撤销锁定,释放电路资源。Unlocking of the temporary circuit: After the end of the data transmission, the enable control signal is reduced to zero, and the connection jacket of the routing source node (may be the data sender or the data receiver), after confirming that the CRC check is correct (may be the target The CRC sent by the node is correct), issue a command to cancel the circuit lock, all nodes along the line cancel the lock, and release the circuit resources.

图3是本发明提供的数据传输方法的流程示意图之三,图4是本发明提供的数据传输方法的流程示意图之四,如图3,图4所示,该方法包括:Fig. 3 is the third schematic flow diagram of the data transmission method provided by the present invention, and Fig. 4 is the fourth schematic flow diagram of the data transmission method provided by the present invention, as shown in Fig. 3 and Fig. 4, the method includes:

步骤1,路由源节点连接的本地模块产生一个数据传输需求,该数据传输需求包括:目标地址、发或收等传输控制和数据性质;Step 1, the local module connected to the routing source node generates a data transmission requirement, the data transmission requirement includes: destination address, transmission control and data properties such as sending or receiving;

步骤2,路由源节点的连接外套生成一个路由包,同时生成一个超时计数器,并开始递减计数,当完成数据传输被解锁的同时,确认CRC正确后(可能是路由目标节点送来的CRC正确),清除该超时计数器,当超时计数器超时,路由源节点的连接外套解锁该传输的临时电路连接,并向路由源节点的本地模块报错,该路由包包括:源编码地址、目标编码地址、数据性质、传输查错需求等;Step 2, the connection jacket of the routing source node generates a routing packet, and at the same time generates a timeout counter, and starts to count down. When the data transmission is completed and unlocked, after confirming that the CRC is correct (maybe the CRC sent by the routing target node is correct) , clear the timeout counter, when the timeout counter times out, the connection coat of the routing source node unlocks the temporary circuit connection of the transmission, and reports an error to the local module of the routing source node, the routing packet includes: source coded address, destination coded address, data nature , transmission error checking requirements, etc.;

步骤3,路由源节点的连接外套按照目标编码地址的方向发送路由包,如果目标编码地址方向的出口已占用,则向任意空闲方向发包,同时将该节点和入出端口添入路由包,锁定入出口,同时向临近节点发送占用状态;Step 3: The connection jacket of the routing source node sends the routing packet in the direction of the target coded address. If the exit in the direction of the target coded address is already occupied, send the packet to any free direction, and add the node and the in-out port into the routing packet at the same time to lock the inbound port. exit, while sending occupancy status to adjacent nodes;

步骤4,路由过程中,对于每个收到包的节点:其连接外套按照目标编码地址的路由方向准备发送路由包,如果目标编码地址方向的出口已被占用,则向任意空闲方向准备发包,将该节点和路由入口出口添入路由包,发送路由包,锁定该连接外套的入出口;Step 4, during the routing process, for each node that receives the packet: its connection jacket prepares to send the routing packet according to the routing direction of the target coded address, if the exit in the direction of the target coded address is already occupied, prepares to send a packet in any free direction, Add the node and routing entry and exit into the routing package, send the routing package, and lock the entry and exit of the connection jacket;

步骤5,直到路由包到达路由目标节点,路由目标节点的连接外套拆包并向路由目标节点的本地模块投递该路由包的参数,路由目标节点的本地模块解析数据,如果路由目标节点的本地模块正在传输数据,则向路由源节点发送路由失败,如果路由目标节点的本地模块没有正在传输数据,可以接收或发送数据,则路由目标节点锁定路由目标节点;Step 5, until the routing packet reaches the routing target node, the connection jacket of the routing target node unpacks and delivers the parameters of the routing packet to the local module of the routing target node, and the local module of the routing target node parses the data. If the local module of the routing target node If the data is being transmitted, sending the route to the routing source node fails. If the local module of the routing target node is not transmitting data and can receive or send data, the routing target node locks the routing target node;

步骤6,如果路由目标节点作为数据发送端,按照数据性质开始发送传输数据,同时使用使能比特标注传输数据的有效性;如果路由源节点是数据发送端,路由源节点在收到锁定路由后按照数据性质开始发送传输数据,同时使用使能比特标注传输数据的有效性;Step 6, if the route target node is the data sender, start sending the transmission data according to the nature of the data, and at the same time use the enable bit to mark the validity of the transmission data; if the route source node is the data sender, the route source node receives the locked route Start sending transmission data according to the nature of the data, and use the enable bit to mark the validity of the transmission data at the same time;

步骤7,如果路由源节点是数据接收端,路由源节点的本地模块在使能控制信号例如使能比特控制下共同开始接收数据;如果路由目标节点是数据接收端,路由目标节点的本地模块在使能控制信号例如使能比特控制下共同开始接收数据;Step 7, if the routing source node is a data receiving end, the local module of the routing source node starts to receive data together under the control of an enabling control signal such as an enable bit; if the routing target node is a data receiving end, the local module of the routing target node is in Start receiving data under the control of an enable control signal such as an enable bit;

步骤8,当数据发送端结束传输数据发送,数据发送端将其连接外套的使能控制信号对应的使能比特拉低;Step 8, when the data sending end finishes transmitting data, the data sending end pulls down the enable bit corresponding to the enable control signal connected to the jacket;

步骤9,数据接收端接收到的传输数据(数据接收端可以是路由源节点或路由目标节点),中包括使能比特为低的传输数据时,对该参数数据进行CRC校验,如通过CRC校验,发出CRC校验合格,如果数据接收端是路由目标节点,数据接收端发送解锁比特作为第三信号;路由源节点收到本节点或路由目标节点的第三信号,解锁临时电路;如未通过CRC校验(CRC失败),则跳到步骤10;Step 9, when the transmission data received by the data receiving end (the data receiving end can be a routing source node or a routing target node), including the transmission data whose enable bit is low, perform a CRC check on the parameter data, such as by CRC Check, send out the CRC check pass, if the data receiving end is the routing target node, the data receiving end sends the unlock bit as the third signal; the routing source node receives the third signal from the node or the routing target node, and unlocks the temporary circuit; If the CRC check is not passed (CRC failure), skip to step 10;

步骤10,如果数据接收端是路由目标节点,路由目标节点确认失败,并向路由源节点发送CRC失败报告;如果数据接收端本身就是路由源节点,路由源节点确认失败,并向该节点的本地模块发送失败报告;然后路由源节点解锁该临时电路。Step 10, if the data receiving end is the routing target node, the routing target node fails to confirm, and sends a CRC failure report to the routing source node; if the data receiving end itself is the routing source node, the routing source node fails to confirm, and sends a local The module sends a failure report; the routing source node then unlocks the temporary circuit.

假设,片上网络中的各个网络节点的节点带宽W-bit=256;Assume that the node bandwidth W-bit of each network node in the network on chip = 256;

节点数R=36;Number of nodes R=36;

每节点路由延迟=1时钟;Routing delay per node = 1 clock;

每节点数据电路为组合电路,无流水线延迟;The data circuit of each node is a combined circuit without pipeline delay;

设有路由建立协议、路由锁定协议和路由解锁协议;There are routing establishment protocol, routing locking protocol and routing unlocking protocol;

设有数据传输协议(数据链);There is a data transmission protocol (data link);

设有超时异常处理协议;There is a timeout exception handling protocol;

设有本地器件的节点连接外套wrapper及外套重构方法。The node connection wrapper and the wrapper reconfiguration method of the local device are provided.

图5是一个二维网格连接的片上网络(11),由节点R(14)和节点间连线(12)以及节点至接口连线(13)构成。每个节点连接东南西北(东E、南S、西W、北N)和本地模块的连接外套(15),其中,连接外套的里面是被连模块M,被连模块M是图7中的(23)。(11)可以由多个节点R(14)构成,此例为36个节点。Fig. 5 is a two-dimensional mesh-connected on-chip network (11), which is composed of nodes R (14), inter-node connections (12) and node-to-interface connections (13). Each node connects the connection coat (15) of the southeast and northwest (east E, south S, west W, north N) and the local module, wherein, the inside of the connection coat is the connected module M, and the connected module M is in Fig. 7 (twenty three). (11) can be composed of multiple nodes R(14), 36 nodes in this example.

每个节点间连线(12)是两套双向并行多比特连线,从一个节点连到另一个节点。连线分为两套,分别为节点输出连线(256bit+7bit)和节点输入连线(256bit+7bit)。每个节点共有四套连线(东E、南S、西W、北N)和一套本地上下载连线。连线的宽度为总线宽度,例如,是263bit输入线和263bit输出线(256bit数据+7bit控制)。Each inter-node connection (12) is two sets of bidirectional parallel multi-bit connections from one node to another. The connection is divided into two sets, which are node output connection (256bit+7bit) and node input connection (256bit+7bit). Each node has four sets of connections (East E, South S, West W, North N) and a set of local upload and download connections. The width of the connection line is the bus width, for example, it is 263bit input line and 263bit output line (256bit data+7bit control).

图5的二维网格连接的片上网络(11)的输入输出连线(13)是两套并行多比特连线,从一个节点连到一个外部接口。连线分为两套,分别为系统输出和系统输入。连线的宽度为总线宽度,例如,连线的宽度可以是526bit,263bit输入线和263bit输出线(256bit数据+7bit控制)。The input and output connections (13) of the two-dimensional mesh-connected on-chip network (11) in Fig. 5 are two sets of parallel multi-bit connections from a node to an external interface. The connection is divided into two sets, namely system output and system input. The width of the connection line is the bus width, for example, the width of the connection line may be 526bit, 263bit input line and 263bit output line (256bit data+7bit control).

二维网格连接的片上网络(11)的每一个节点R的内部结构如图6所示。每个节点的设计是相同的。其连线分为四个方向,八组连线;分别为The internal structure of each node R of the two-dimensional mesh-connected network on chip (11) is shown in FIG. 6 . The design of each node is the same. Its connections are divided into four directions and eight groups of connections;

1,Nin:北口输入线(可连至南口输出、东口输出、西口输出、和本地(C)输入);1. Nin: North port input line (can be connected to south port output, east port output, west port output, and local (C) input);

2,Nout:北口输出线(来自南口输入、东口输入、西口输入、和本地(C)输出);2. Nout: North port output line (from south port input, east port input, west port input, and local (C) output);

3,Sin:南口输入线(可连至北口输出、东口输出、西口输出、和本地(C)输入);3. Sin: South port input line (can be connected to North port output, East port output, West port output, and local (C) input);

4,Sout:南口输出线(来自北口输入、东口输入、西口输入、和本地(C)输出);4. Sout: South port output line (from north port input, east port input, west port input, and local (C) output);

5,Ein:东口输入线(可连至北口输出、南口输出、西口输出、和本地(C)输入);5. Ein: east port input line (can be connected to north port output, south port output, west port output, and local (C) input);

6,Eout:东口输出线(来自北口输入、南口输入、西口输入、和本地(C)输出);6. Eout: East port output line (from north port input, south port input, west port input, and local (C) output);

7,Win:西口输入线(可连至北口输出、南口输出、东口输出、和本地(C)输入);7. Win: West port input line (can be connected to North port output, South port output, East port output, and local (C) input);

8,Wout:西口输出线(来自北口输入、南口输入、东口输入、和本地(C)输出);8. Wout: West port output line (from north port input, south port input, east port input, and local (C) output);

其中,Clock:时钟信号输入端。Among them, Clock: clock signal input terminal.

本地模块的连接外套(15)一方面通过标准连线连至节点,见(14)。另一方面和被连模块M(23),通过连接重构配置,连到一起。见图7。The connection jacket (15) of the local module is on the one hand connected to the node by standard wiring, see (14). On the other hand, it is connected with the connected module M (23) through connection reconstruction configuration. See Figure 7.

本地模块的连接外套(图7的虚线内)包括:数据通路(21)和控制通路(22)。The connection jacket of the local module (within the dotted line in Fig. 7) includes: a data path (21) and a control path (22).

1,(21)的第一个电路功能是入口电路重构设计电路(20);1, the first circuit function of (21) is the entrance circuit reconfiguration design circuit (20);

2,(21)的第二个电路功能是出口电路重构设计电路(29);2, the second circuit function of (21) is the export circuit reconstruction design circuit (29);

3,(21)的第三个电路功能是路由的入口和出口;3. The third circuit function of (21) is the entry and exit of the route;

4,(22)的第一个电路功能是为路由源节点的打包功能;4. The first circuit function of (22) is the packaging function of the routing source node;

5,(22)的第二个电路功能是为中间节点和路由目标节点来路由包的接收和拆包解析;5. The second circuit function of (22) is to receive and unpack the routing packet for the intermediate node and the routing target node;

6,(22)的第三个电路功能是为路由源节点和中间节点决定出口路由和传输路由包;6. The third circuit function of (22) is to determine the export route and transmit the routing packet for the routing source node and the intermediate node;

7,(22)的第四个电路功能是路由源节点的看门狗;7. The fourth circuit function of (22) is the watchdog of the routing source node;

8,(22)的第五个电路功能是为路由源节点完成数据收(含CRC校验)发和控制(路由源节点可为数据的收端或发端);8. The fifth circuit function of (22) is to complete data receiving (including CRC check) sending and control for the routing source node (the routing source node can be the receiving or sending end of the data);

9,(22)的第六个电路功能是为路由目标节点完成数据收(含CRC校验)发和控制(路由目标节点可为数据的收端或发端);9. The sixth circuit function of (22) is to complete data receiving (including CRC check) sending and control for the routing target node (the routing target node can be the receiving or sending end of the data);

10,(22)的第七个电路功能是记录保持更新临近节点的占用状态。10, the seventh circuit function of (22) is to record and keep updating the occupancy status of adjacent nodes.

其中,(24)将(21)的东西南北四路输入引入连接外套控制器(22)实施路由,(25)将路由决策送给(21)实施出口选择,连接外套至模块的连线(26)电路:执行入口电路重构配置,在电路设计阶段,根据被连模块的输入线确定连接模块入口电路和连接协议的配置,将经过重构配置的数据送入模块。Wherein, (24) introduces the four-way input of (21) from east to west to the controller (22) to implement routing, (25) sends the routing decision to (21) to implement the outlet selection, and connects the jacket to the module's connection line (26 ) circuit: perform reconfiguration and configuration of the entry circuit. In the circuit design stage, determine the configuration of the entry circuit and connection protocol of the connection module according to the input line of the connected module, and send the reconfigured data into the module.

被连模块至连接外套的连线(27)电路:执行出口电路重构配置:在电路设计阶段,根据被连模块的输出线确定连接模块出口电路和连接协议的配置,将尚未重构配置数据输出至连接外套。The connection line (27) circuit from the connected module to the connection jacket: Execute exit circuit reconstruction configuration: In the circuit design stage, determine the configuration of the connection module exit circuit and connection protocol according to the output line of the connected module, and the configuration data will not be reconstructed Output to Connect Jacket.

(28)用于连接外套和被连模块的控制和状态信息交互,至少包括支持源路由的建立路径需求、数据基本信息、超时和错误报告等;和支持目标路由的(含广播和多播)数据基本信息、超时和错误报告等。(28) Interaction of control and status information for connecting the jacket and the connected module, at least including path establishment requirements supporting source routing, basic data information, timeout and error reporting, etc.; and supporting target routing (including broadcast and multicast) Data basic information, timeout and error reporting, etc.

连接外套执行的两个主要功能具体为:The two main functions performed by the connection jacket are specifically:

第一个功能是通过路由建立电路连接:建立、锁定、撤销路由连接。这个功能是动态的,每次传输完成一次。(22)根据源路由本地模块发起器件的数据传输要求,编制路由包,完成:1,(22)节点保持记录临近节点的占用状况;2,根据路由的路由目标节点的地址和临近节点的占用状况,添加报头内容,记录路径,临时锁定该节点两个方向的入出路径,并向确定的方向发送路由包;3,依此路由方法路由,将最终找到路由目标节点的目标设备,并建立一条电路来连接路由源节点的本地模块与路由目标节点的本地模块;4,路由目标节点的本地模块确认传输请求,如空闲,则发出回传锁定电路的命令;如不空闲,则发出忙状态;5,锁定电路:建立一个定向的锁定的电路连接;6,保持锁定状态,支撑总线传输;7,撤销锁定:传输结束后,数据接收侧发出撤销电路锁定的请求,路由源节点执行电路撤销的命令,沿线的所有节点撤销锁定,释放电路资源;8,每个节点(作为路由源节点时)配有超时控制,异常超时的传输会被终止,并通过路由源节点的本地模块向系统上报。The first function is to establish circuit connections through routing: establish, lock, and revoke routing connections. This function is dynamic and is done once per transfer. (22) According to the data transmission requirements of the device initiated by the source routing local module, the routing package is compiled to complete: 1, (22) the node keeps recording the occupancy status of the adjacent nodes; 2, according to the address of the routing target node and the occupancy of the adjacent nodes status, add header content, record the path, temporarily lock the ingress and egress paths of the node in both directions, and send routing packets to the determined direction; 3. Routing according to this routing method will eventually find the target device of the routing target node and establish a circuit to connect the local module of the routing source node and the local module of the routing target node; 4. The local module of the routing target node confirms the transmission request, if it is idle, it will issue a command to return the locked circuit; if it is not idle, it will issue a busy state; 5. Lock circuit: establish a directional locked circuit connection; 6. Maintain the locked state and support bus transmission; 7. Unlock: After the transmission is completed, the data receiving side sends a request to cancel the circuit lock, and the routing source node executes the circuit cancellation. Command, all nodes along the line cancel the lock and release circuit resources; 8. Each node (as a routing source node) is equipped with a timeout control, and abnormal timeout transmissions will be terminated and reported to the system through the local module of the routing source node.

第二个功能是使用电路传输数据:电路锁定后,开始在电路上传输数据。路由源节点或路由目标节点均可发送数据,发送的数据被使能比特生效,发送结束后使能比特消失,数据接收方根据CRC校验结果做数据接收报告,路由源节点收到报告立即解锁电路,释放电路资源。The second function is to use the circuit to transmit data: after the circuit is locked, start transmitting data on the circuit. Both the routing source node and the routing target node can send data, the sent data is enabled by the enable bit, and the enable bit disappears after the transmission is completed, the data receiver makes a data reception report according to the CRC check result, and the routing source node unlocks immediately after receiving the report Circuit, to release circuit resources.

被连模块M(23):可以是处理器模块,功能模块,存储器模块和接口模块。见图7。The connected module M (23): can be a processor module, a function module, a memory module and an interface module. See Figure 7.

对被连模块M(23)的输入连接可以包括:Input connections to connected modules M(23) may include:

1,处理器模块:连接输入至处理器模块的数据存储写入总线和程序/配置存储器;1. Processor module: connect to the data storage write bus and program/configuration memory input to the processor module;

2,功能模块:连接输入至功能模块的数据存储写入总线和配置寄存器;2. Functional module: connect the input to the data storage write bus and configuration register of the functional module;

3,存储器:连接输入至数据存储器的写入端口,节点内部直接存储器访问(DirectMemory Access,DMA)提供地址;3. Memory: Connect the input to the write port of the data memory, and the internal direct memory access (DirectMemory Access, DMA) of the node provides the address;

4,接口:连接输入至接口,节点内部DMA提供后续数据传输。4. Interface: Connect the input to the interface, and the internal DMA of the node provides subsequent data transmission.

对被连模块M(23)的输出连接可能包括:Output connections to the connected module M(23) may include:

1,处理器模块:处理器模块的数据存储读出总线连至输出;1. Processor module: the data storage readout bus of the processor module is connected to the output;

2,功能模块:模块的数据存储的读出总线连至输出;2. Functional module: the readout bus of the module's data storage is connected to the output;

3,存储器:数据存储器的读出通过节点内部DMA连至输出;3. Memory: The readout of the data memory is connected to the output through the internal DMA of the node;

4,接口:接口直接连至输出。4. Interface: The interface is directly connected to the output.

按图5(11)设有36个被连模块M(含部分存储模块和接口模块),如果按电路全互联,256bit总线,其逻辑开销可达5百万门,连线总长可达1300米,设驱动功率系数为1。本发明提供的基于包交换的路由建立电路的方法中逻辑门开销小于0.5百万门,连线总长不多于64米,相对连线面积和驱动功率减低20倍。According to Figure 5 (11), there are 36 connected modules M (including some storage modules and interface modules). If the circuit is fully interconnected, the 256bit bus can have a logic overhead of 5 million gates, and the total length of the connection can reach 1300 meters. , set the driving power coefficient to 1. In the method for establishing a circuit based on packet switching routing provided by the present invention, the cost of logic gates is less than 0.5 million gates, the total length of the connection is not more than 64 meters, and the relative connection area and driving power are reduced by 20 times.

本发明与电路交换方案的比较如表1所示:The comparison between the present invention and the circuit switching scheme is as shown in Table 1:

表1Table 1

Figure BDA0004067588820000251
Figure BDA0004067588820000251

本发明与包交换方案的比较如表2所示:The comparison of the present invention and packet switching scheme is as shown in table 2:

表2Table 2

Figure BDA0004067588820000252
Figure BDA0004067588820000252

本发明提供的数据传输方法,基于片上网络建立路由源节点到路由目标节点的路由路径,并将该路由路径搭建为临时电路,基于该临时电路执行数据传输,其低延迟性和确定的资源提供了多路数据并行实时传输的大带宽和低延迟需求,提高了数据传输效率,同时能够在传输数据传输完成后解锁该临时电路,释放资源,避免资源占用所导致的拥堵。The data transmission method provided by the present invention establishes a routing path from a routing source node to a routing target node based on an on-chip network, and builds the routing path as a temporary circuit, and performs data transmission based on the temporary circuit. Its low delay and deterministic resource provision It meets the large bandwidth and low latency requirements of parallel real-time transmission of multi-channel data, improves data transmission efficiency, and can unlock the temporary circuit after the transmission of data transmission is completed, releasing resources and avoiding congestion caused by resource occupation.

下面对本发明提供的数据传输系统进行描述,下文描述的数据传输系统与上文描述的数据传输方法可相互对应参照。The data transmission system provided by the present invention is described below, and the data transmission system described below and the data transmission method described above can be referred to in correspondence.

图8是本发明提供的数据传输系统的结构示意图之一,如图8所示,包括:Fig. 8 is one of the schematic structural diagrams of the data transmission system provided by the present invention, as shown in Fig. 8, including:

电路锁定模块810、第一发送模块811以及传输控制模块812;Acircuit locking module 810, afirst sending module 811 and atransmission control module 812;

所述电路锁定模块810,用于在确定接收到数据接收端发送的锁定信号的情况下,锁定临时电路,所述锁定信号用于表征允许锁定所述临时电路,所述临时电路为基于路由路径搭建而成的,所述路由路径为将路由包从路由源节点路由到路由目标节点的路径,所述路由源节点和所述路由目标节点均是根据至少二维网格连接的片上网络中的每个网络节点连接的本地模块确定的,所述路由包是由所述路由源节点产生的;Thecircuit locking module 810 is configured to lock the temporary circuit when it is determined that a locking signal sent by the data receiving end is received, the locking signal is used to indicate that the temporary circuit is allowed to be locked, and the temporary circuit is based on a routing path constructed, the routing path is a path for routing a routing packet from a routing source node to a routing target node, and both the routing source node and the routing target node are in an on-chip network connected according to at least a two-dimensional grid Determined by the local module connected to each network node, the routing packet is generated by the routing source node;

所述第一发送模块811,用于将所述临时电路的使能控制信号设置为第一信号,并将传输数据沿所述临时电路发送给所述数据接收端,所述第一信号用于表征允许向所述数据接收端发送所述传输数据,所述数据接收端是根据所述路由目标节点对应的本地模块确定的;Thefirst sending module 811 is configured to set the enable control signal of the temporary circuit as a first signal, and send the transmission data to the data receiving end along the temporary circuit, and the first signal is used for Characterizing allows sending the transmission data to the data receiving end, the data receiving end is determined according to the local module corresponding to the routing target node;

所述传输控制模块812,用于停止向所述数据接收端发送所述传输数据,以供所述数据接收端对所述传输数据进行校验。Thetransmission control module 812 is configured to stop sending the transmission data to the data receiving end, so that the data receiving end can verify the transmission data.

本发明提供的数据传输系统,基于片上网络建立路由源节点到路由目标节点的路由路径,并将该路由路径搭建为临时电路,基于该临时电路执行数据传输,其低延迟性和确定的资源提供了多路数据并行实时传输的大带宽和低延迟需求,提高了数据传输效率。The data transmission system provided by the present invention establishes a routing path from a routing source node to a routing target node based on an on-chip network, builds the routing path as a temporary circuit, and performs data transmission based on the temporary circuit. Its low delay and deterministic resource provision It meets the large bandwidth and low latency requirements of parallel real-time transmission of multi-channel data, and improves the efficiency of data transmission.

图9是本发明提供的数据传输系统的结构示意图之二,如图9所示,包括:Fig. 9 is the second structural diagram of the data transmission system provided by the present invention, as shown in Fig. 9, including:

第二发送模块910、第一接收模块911以及校验模块912;Thesecond sending module 910, thefirst receiving module 911 and thechecking module 912;

所述第二发送模块910,用于向数据发送端发送锁定信号,以供所述数据发送端根据所述锁定信号锁定临时电路,所述锁定信号用于表征允许锁定所述临时电路,所述临时电路为基于路由路径搭建而成的,所述路由路径为将路由包从路由源节点路由到路由目标节点的路径,所述路由源节点和所述路由目标节点均是根据至少二维网格连接的片上网络中的每个网络节点连接的本地模块确定的,所述路由包是由所述路由源节点产生的;Thesecond sending module 910 is configured to send a locking signal to the data sending end for the data sending end to lock the temporary circuit according to the locking signal, the locking signal is used to indicate that the temporary circuit is allowed to be locked, the The temporary circuit is constructed based on a routing path, and the routing path is a path for routing a routing packet from a routing source node to a routing target node, and both the routing source node and the routing target node are based on at least a two-dimensional grid Determined by the local module connected to each network node in the connected on-chip network, the routing packet is generated by the routing source node;

所述第一接收模块911,用于在所述临时电路的使能控制信号为第一信号的情况下,接收数据发送端沿所述临时电路发送的传输数据,所述第一信号用于表征允许向数据接收端发送所述传输数据,所述数据发送端是根据所述路由源节点对应的本地模块确定的;Thefirst receiving module 911 is configured to receive transmission data sent by the data sending end along the temporary circuit when the enabling control signal of the temporary circuit is a first signal, and the first signal is used to represent Allowing to send the transmission data to the data receiving end, the data sending end is determined according to the local module corresponding to the routing source node;

所述校验模块912,用于在确定所述数据发送端将所述使能控制信号设置为第二信号的情况下,停止接收所述数据发送端发送的所述传输数据,对所述传输数据进行校验,所述第二信号用于表征传输结束,不再允许向所述数据接收端发送所述传输数据。Thechecking module 912 is configured to stop receiving the transmission data sent by the data sending end when it is determined that the data sending end sets the enable control signal as a second signal, and perform a check on the transmission data The data is verified, the second signal is used to indicate the end of the transmission, and the transmission data is no longer allowed to be sent to the data receiving end.

本发明提供的数据传输系统,基于片上网络建立路由源节点到路由目标节点的路由路径,并将该路由路径搭建为临时电路,基于该临时电路执行数据传输,其低延迟性和确定的资源提供了多路数据并行实时传输的大带宽和低延迟需求,提高了数据传输效率。The data transmission system provided by the present invention establishes a routing path from a routing source node to a routing target node based on an on-chip network, builds the routing path as a temporary circuit, and performs data transmission based on the temporary circuit. Its low delay and deterministic resource provision It meets the large bandwidth and low latency requirements of parallel real-time transmission of multi-channel data, and improves the efficiency of data transmission.

图10是本发明提供的一种电子设备的实体结构示意图,如图10所示,该电子设备可以包括:处理器(processor)1010、通信接口(communication interface)1011、存储器(memory)1012和总线(bus)1013,其中,处理器1010,通信接口1011,存储器1012通过总线1013完成相互间的通信。处理器1010可以调用存储器1012中的逻辑指令,以执行如下方法:FIG. 10 is a schematic diagram of the physical structure of an electronic device provided by the present invention. As shown in FIG. 10, the electronic device may include: a processor (processor) 1010, a communication interface (communication interface) 1011, a memory (memory) 1012 and a bus (bus) 1013 , wherein, theprocessor 1010 , thecommunication interface 1011 , and thememory 1012 communicate with each other through thebus 1013 .Processor 1010 can invoke logic instructions inmemory 1012 to perform the following methods:

在确定接收到数据接收端发送的锁定信号的情况下,锁定临时电路,所述锁定信号用于表征允许锁定所述临时电路,所述临时电路为基于路由路径搭建而成的,所述路由路径为将路由包从路由源节点路由到路由目标节点的路径,所述路由源节点和所述路由目标节点均是根据至少二维网格连接的片上网络中的每个网络节点连接的本地模块确定的,所述路由包是由所述路由源节点产生的;When it is determined that the locking signal sent by the data receiving end is received, the temporary circuit is locked, the locking signal is used to indicate that the temporary circuit is allowed to be locked, the temporary circuit is built based on a routing path, and the routing path In order to route the routing packet from the routing source node to the path of the routing target node, the routing source node and the routing target node are determined according to the local module connected to each network node in the on-chip network connected by at least two-dimensional mesh , the routing packet is generated by the routing source node;

将所述临时电路的使能控制信号设置为第一信号,并将传输数据沿所述临时电路发送给所述数据接收端,所述第一信号用于表征允许向所述数据接收端发送所述传输数据,所述数据接收端是根据所述路由目标节点对应的本地模块确定的;Setting the enabling control signal of the temporary circuit as a first signal, and sending the transmission data to the data receiving end along the temporary circuit, the first signal is used to indicate that the data is allowed to be sent to the data receiving end The transmission data, the data receiving end is determined according to the local module corresponding to the routing target node;

停止向所述数据接收端发送所述传输数据,以供所述数据接收端对所述传输数据进行校验。Stop sending the transmission data to the data receiving end, so that the data receiving end can verify the transmission data.

或,or,

向数据发送端发送锁定信号,以供所述数据发送端根据所述锁定信号锁定临时电路,所述锁定信号用于表征允许锁定所述临时电路,所述临时电路为基于路由路径搭建而成的,所述路由路径为将路由包从路由源节点路由到路由目标节点的路径,所述路由源节点和所述路由目标节点均是根据至少二维网格连接的片上网络中的每个网络节点连接的本地模块确定的,所述路由包是由所述路由源节点产生的;Sending a locking signal to the data sending end for the data sending end to lock the temporary circuit according to the locking signal, the locking signal is used to indicate that the temporary circuit is allowed to be locked, and the temporary circuit is built based on a routing path , the routing path is a path for routing a routing packet from a routing source node to a routing target node, and the routing source node and the routing target node are each network node in an on-chip network connected according to at least a two-dimensional grid Determined by the connected local module, the routing packet is generated by the routing source node;

在所述临时电路的使能控制信号为第一信号的情况下,接收数据发送端沿所述临时电路发送的传输数据,所述第一信号用于表征允许向数据接收端发送所述传输数据,所述数据发送端是根据所述路由源节点对应的本地模块确定的;When the enable control signal of the temporary circuit is a first signal, receive the transmission data sent by the data sending end along the temporary circuit, and the first signal is used to indicate that the transmission data is allowed to be sent to the data receiving end , the data sending end is determined according to the local module corresponding to the routing source node;

在确定所述数据发送端将所述使能控制信号设置为第二信号的情况下,停止接收所述数据发送端发送的所述传输数据,对所述传输数据进行校验,所述第二信号用于表征传输结束,不再允许向所述数据接收端发送所述传输数据。When it is determined that the data sending end sets the enable control signal as a second signal, stop receiving the transmission data sent by the data sending end, check the transmission data, and the second The signal is used to indicate the end of the transmission, and the transmission data is no longer allowed to be sent to the data receiving end.

此外,上述的存储器中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机电源屏(可以是个人计算机,服务器,或者网络电源屏等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。In addition, the above logic instructions in the memory can be implemented in the form of software functional units and can be stored in a computer-readable storage medium when sold or used as an independent product. Based on this understanding, the essence of the technical solution of the present invention or the part that contributes to the prior art or the part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including Several instructions are used to make a computer power panel (which may be a personal computer, a server, or a network power panel, etc.) execute all or part of the steps of the methods described in various embodiments of the present invention. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM, Read-only Memory), random access memory (RAM, Random Access Memory), magnetic disk or optical disk, etc., which can store program codes. .

进一步地,本发明公开一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的数据传输方法,例如包括:Further, the present invention discloses a computer program product, the computer program product includes a computer program stored on a non-transitory computer-readable storage medium, the computer program includes program instructions, and when the program instructions are executed by a computer , the computer can execute the data transmission method provided by the above method embodiments, for example including:

在确定接收到数据接收端发送的锁定信号的情况下,锁定临时电路,所述锁定信号用于表征允许锁定所述临时电路,所述临时电路为基于路由路径搭建而成的,所述路由路径为将路由包从路由源节点路由到路由目标节点的路径,所述路由源节点和所述路由目标节点均是根据至少二维网格连接的片上网络中的每个网络节点连接的本地模块确定的,所述路由包是由所述路由源节点产生的;When it is determined that the locking signal sent by the data receiving end is received, the temporary circuit is locked, the locking signal is used to indicate that the temporary circuit is allowed to be locked, the temporary circuit is built based on a routing path, and the routing path In order to route the routing packet from the routing source node to the path of the routing target node, the routing source node and the routing target node are determined according to the local module connected to each network node in the on-chip network connected by at least two-dimensional mesh , the routing packet is generated by the routing source node;

将所述临时电路的使能控制信号设置为第一信号,并将传输数据沿所述临时电路发送给所述数据接收端,所述第一信号用于表征允许向数据接收端发送所述传输数据,所述数据接收端是根据所述路由目标节点对应的本地模块确定的;Setting the enable control signal of the temporary circuit as a first signal, and sending the transmission data to the data receiving end along the temporary circuit, the first signal is used to indicate that the transmission is allowed to be sent to the data receiving end data, the data receiving end is determined according to the local module corresponding to the routing target node;

停止向所述数据接收端发送所述传输数据,以供所述数据接收端对所述传输数据进行校验。Stop sending the transmission data to the data receiving end, so that the data receiving end can verify the transmission data.

或,or,

向数据发送端发送锁定信号,以供所述数据发送端根据所述锁定信号锁定临时电路,所述锁定信号用于表征允许锁定所述临时电路,所述临时电路为基于路由路径搭建而成的,所述路由路径为将路由包从路由源节点路由到路由目标节点的路径,所述路由源节点和所述路由目标节点均是根据至少二维网格连接的片上网络中的每个网络节点连接的本地模块确定的,所述路由包是由所述路由源节点产生的;Sending a locking signal to the data sending end for the data sending end to lock the temporary circuit according to the locking signal, the locking signal is used to indicate that the temporary circuit is allowed to be locked, and the temporary circuit is built based on a routing path , the routing path is a path for routing a routing packet from a routing source node to a routing target node, and the routing source node and the routing target node are each network node in an on-chip network connected according to at least a two-dimensional grid Determined by the connected local module, the routing packet is generated by the routing source node;

在所述临时电路的使能控制信号为第一信号的情况下,接收数据发送端沿所述临时电路发送的传输数据,所述第一信号用于表征允许向数据接收端发送所述传输数据,所述数据发送端是根据所述路由源节点对应的本地模块确定的;When the enable control signal of the temporary circuit is a first signal, receive the transmission data sent by the data sending end along the temporary circuit, and the first signal is used to indicate that the transmission data is allowed to be sent to the data receiving end , the data sending end is determined according to the local module corresponding to the routing source node;

在确定所述数据发送端将所述使能控制信号设置为第二信号的情况下,停止接收所述数据发送端发送的所述传输数据,对所述传输数据进行校验,所述第二信号用于表征传输结束,不再允许向所述数据接收端发送所述传输数据。When it is determined that the data sending end sets the enable control signal as a second signal, stop receiving the transmission data sent by the data sending end, check the transmission data, and the second The signal is used to indicate the end of the transmission, and the transmission data is no longer allowed to be sent to the data receiving end.

另一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各实施例提供的数据传输方法,例如包括:On the other hand, the present invention also provides a non-transitory computer-readable storage medium, on which a computer program is stored, and when the computer program is executed by a processor, the data transmission method provided by the above-mentioned embodiments is implemented, for example, including:

在确定接收到数据接收端发送的锁定信号的情况下,锁定临时电路,所述锁定信号用于表征允许锁定所述临时电路,所述临时电路为基于路由路径搭建而成的,所述路由路径为将路由包从路由源节点路由到路由目标节点的路径,所述路由源节点和所述路由目标节点均是根据至少二维网格连接的片上网络中的每个网络节点连接的本地模块确定的,所述路由包是由所述路由源节点产生的;When it is determined that the locking signal sent by the data receiving end is received, the temporary circuit is locked, the locking signal is used to indicate that the temporary circuit is allowed to be locked, the temporary circuit is built based on a routing path, and the routing path In order to route the routing packet from the routing source node to the path of the routing target node, the routing source node and the routing target node are determined according to the local module connected to each network node in the on-chip network connected by at least two-dimensional mesh , the routing packet is generated by the routing source node;

将所述临时电路的使能控制信号设置为第一信号,并将传输数据沿所述临时电路发送给所述数据接收端,所述第一信号用于表征允许向所述数据接收端发送所述传输数据,所述数据接收端是根据所述路由目标节点对应的本地模块确定的;Setting the enabling control signal of the temporary circuit as a first signal, and sending the transmission data to the data receiving end along the temporary circuit, the first signal is used to indicate that the data is allowed to be sent to the data receiving end The transmission data, the data receiving end is determined according to the local module corresponding to the routing target node;

停止向所述数据接收端发送所述传输数据,以供所述数据接收端对所述传输数据进行校验。Stop sending the transmission data to the data receiving end, so that the data receiving end can verify the transmission data.

或,or,

向数据发送端发送锁定信号,以供所述数据发送端根据所述锁定信号锁定临时电路,所述锁定信号用于表征允许锁定所述临时电路,所述临时电路为基于路由路径搭建而成的,所述路由路径为将路由包从路由源节点路由到路由目标节点的路径,所述路由源节点和所述路由目标节点均是根据至少二维网格连接的片上网络中的每个网络节点连接的本地模块确定的,所述路由包是由所述路由源节点产生的;Sending a locking signal to the data sending end for the data sending end to lock the temporary circuit according to the locking signal, the locking signal is used to indicate that the temporary circuit is allowed to be locked, and the temporary circuit is built based on a routing path , the routing path is a path for routing a routing packet from a routing source node to a routing target node, and the routing source node and the routing target node are each network node in an on-chip network connected according to at least a two-dimensional grid Determined by the connected local module, the routing packet is generated by the routing source node;

在所述临时电路的使能控制信号为第一信号的情况下,接收数据发送端沿所述临时电路发送的传输数据,所述第一信号用于表征允许向数据接收端发送所述传输数据,所述数据发送端是根据所述路由源节点对应的本地模块确定的;When the enable control signal of the temporary circuit is a first signal, receive the transmission data sent by the data sending end along the temporary circuit, and the first signal is used to indicate that the transmission data is allowed to be sent to the data receiving end , the data sending end is determined according to the local module corresponding to the routing source node;

在确定所述数据发送端将所述使能控制信号设置为第二信号的情况下,停止接收所述数据发送端发送的所述传输数据,对所述传输数据进行校验,所述第二信号用于表征传输结束,不再允许向所述数据接收端发送所述传输数据。When it is determined that the data sending end sets the enable control signal as a second signal, stop receiving the transmission data sent by the data sending end, check the transmission data, and the second The signal is used to indicate the end of the transmission, and the transmission data is no longer allowed to be sent to the data receiving end.

以上所描述的系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。The system embodiments described above are only illustrative, and the units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in One place, or it can be distributed to multiple network elements. Part or all of the modules can be selected according to actual needs to achieve the purpose of the solution of this embodiment. It can be understood and implemented by those skilled in the art without any creative efforts.

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机电源屏(可以是个人计算机,服务器,或者网络电源屏等)执行各个实施例或者实施例的某些部分所述的方法。Through the above description of the implementations, those skilled in the art can clearly understand that each implementation can be implemented by means of software plus a necessary general-purpose hardware platform, and of course also by hardware. Based on this understanding, the essence of the above technical solution or the part that contributes to the prior art can be embodied in the form of software products, and the computer software products can be stored in computer-readable storage media, such as ROM/RAM, magnetic Disc, CD, etc., including several instructions to make a computer power panel (which can be a personal computer, a server, or a network power panel, etc.) execute the methods described in various embodiments or some parts of the embodiments.

最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。Finally, it should be noted that: the above embodiments are only used to illustrate the technical solutions of the present invention, rather than to limit them; although the present invention has been described in detail with reference to the foregoing embodiments, those of ordinary skill in the art should understand that: it can still be Modifications are made to the technical solutions described in the foregoing embodiments, or equivalent replacements are made to some of the technical features; and these modifications or replacements do not make the essence of the corresponding technical solutions deviate from the spirit and scope of the technical solutions of the various embodiments of the present invention.

Claims (10)

1. A data transmission method, comprising:
in the case of determining to receive a locking signal sent by a data receiving end, locking a temporary circuit, wherein the locking signal is used for representing that locking is allowed, the temporary circuit is built based on a routing path, the routing path is a path for routing a routing packet from a routing source node to a routing target node, the routing source node and the routing target node are determined according to a local module connected by each network node in an on-chip network connected by at least two-dimensional grids, and the routing packet is generated by the routing source node;
Setting an enabling control signal of the temporary circuit as a first signal, and sending transmission data to the data receiving end along the temporary circuit, wherein the first signal is used for representing permission of sending the transmission data to the data receiving end, and the data receiving end is determined according to a local module corresponding to the routing target node;
and stopping sending the transmission data to the data receiving end so that the data receiving end can check the transmission data.
2. The data transmission method according to claim 1, wherein before the stopping of the transmission data to the data receiving end, the method further comprises:
and setting the enabling control signal as a second signal, wherein the second signal is used for representing the end of transmission, and the transmission data is not allowed to be sent to the data receiving end.
3. The data transmission method according to any one of claims 1-2, characterized in that the method further comprises:
under the condition that the transmission data passes the timeout check and the cyclic redundancy CRC check, unlocking the temporary circuit according to a received third signal sent by the data receiving end, wherein the third signal is a signal for unlocking the temporary circuit;
Generating a failure report when the transmission data does not pass the timeout check or the CRC check, and unlocking the temporary circuit according to the received third signal;
wherein the check includes the timeout check and the CRC check.
4. A data transmission method, comprising:
transmitting a locking signal to a data transmitting end so that the data transmitting end locks a temporary circuit according to the locking signal, wherein the locking signal is used for representing that locking of the temporary circuit is allowed, the temporary circuit is built based on a routing path, the routing path is a path for routing a routing packet from a routing source node to a routing target node, the routing source node and the routing target node are determined according to a local module connected with each network node in an on-chip network connected by at least two-dimensional grids, and the routing packet is generated by the routing source node;
receiving transmission data sent by a data sending terminal along the temporary circuit under the condition that an enabling control signal of the temporary circuit is a first signal, wherein the first signal is used for representing permission of sending the transmission data to a data receiving terminal, and the data sending terminal is determined according to a local module corresponding to the routing source node;
And under the condition that the enabling control signal is set to be a second signal by the data sending end, stopping receiving the transmission data sent by the data sending end, checking the transmission data, wherein the second signal is used for representing the end of transmission, and the transmission data is not allowed to be sent to the data receiving end.
5. The data transmission method according to claim 4, wherein the verifying the transmission data includes:
performing cyclic redundancy CRC (cyclic redundancy check) and overtime check on the transmission data;
the performing timeout checking on the transmission data includes:
and performing timeout verification on the transmission data according to the first time when the data transmitting end transmits the transmission data, the second time when the data transmitting end stops receiving the transmission data and a preset time threshold.
6. A data transmission method according to any one of claims 4-5, characterized in that the method further comprises:
and sending a third signal to the data sending end, wherein the third signal is a signal for unlocking the temporary circuit.
7. A data transmission system, comprising: the device comprises a circuit locking module, a first sending module and a transmission control module;
The circuit locking module is used for locking a temporary circuit under the condition that a locking signal sent by a data receiving end is determined to be received, the locking signal is used for representing that the temporary circuit is allowed to be locked, the temporary circuit is built based on a routing path, the routing path is a path for routing a routing packet from a routing source node to a routing target node, the routing source node and the routing target node are determined according to a local module connected with each network node in an on-chip network connected by at least two-dimensional grids, and the routing packet is generated by the routing source node;
the first sending module is configured to set an enable control signal of the temporary circuit as a first signal, and send transmission data to the data receiving end along the temporary circuit, where the first signal is used for characterizing permission to send the transmission data to the data receiving end, and the data receiving end is determined according to a local module corresponding to the route target node;
the transmission control module is used for stopping sending the transmission data to the data receiving end so that the data receiving end can check the transmission data.
8. A data transmission system, comprising: the device comprises a second sending module, a first receiving module and a verification module;
the second sending module is configured to send a locking signal to a data sending end, so that the data sending end locks a temporary circuit according to the locking signal, where the locking signal is used for characterizing that locking of the temporary circuit is allowed, the temporary circuit is constructed based on a routing path, the routing path is a path for routing a routing packet from a routing source node to a routing destination node, the routing source node and the routing destination node are both determined according to a local module connected by each network node in an on-chip network connected by at least two-dimensional grids, and the routing packet is generated by the routing source node;
the first receiving module is configured to receive, when an enable control signal of the temporary circuit is a first signal, transmission data sent by a data sending end along the temporary circuit, where the first signal is used to characterize permission to send the transmission data to a data receiving end, and the data sending end is determined according to a local module corresponding to the route source node;
the verification module is configured to stop receiving the transmission data sent by the data sending end and verify the transmission data when it is determined that the data sending end sets the enabling control signal as a second signal, where the second signal is used to characterize that transmission is finished, and the transmission data is not allowed to be sent to the data receiving end.
9. An electronic device comprising a processor and a memory storing a computer program, characterized in that the processor implements the data transmission method of any one of claims 1 to 3 or any one of claims 4-6 when executing the computer program.
10. A non-transitory computer readable storage medium having stored thereon a computer program, which when executed by a processor implements the data transmission method according to any of claims 1 to 3 or any of claims 4 to 6.
CN202310081512.4A2023-02-062023-02-06 Data transmission method and systemActiveCN116192733B (en)

Priority Applications (1)

Application NumberPriority DateFiling DateTitle
CN202310081512.4ACN116192733B (en)2023-02-062023-02-06 Data transmission method and system

Applications Claiming Priority (1)

Application NumberPriority DateFiling DateTitle
CN202310081512.4ACN116192733B (en)2023-02-062023-02-06 Data transmission method and system

Publications (2)

Publication NumberPublication Date
CN116192733Atrue CN116192733A (en)2023-05-30
CN116192733B CN116192733B (en)2025-03-21

Family

ID=86432165

Family Applications (1)

Application NumberTitlePriority DateFiling Date
CN202310081512.4AActiveCN116192733B (en)2023-02-062023-02-06 Data transmission method and system

Country Status (1)

CountryLink
CN (1)CN116192733B (en)

Citations (6)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
CN101778049A (en)*2010-03-042010-07-14南京大学Router and transmission method thereof on packet-circuit switching chip
CN105007226A (en)*2015-07-232015-10-28合肥工业大学Multicast router based on package and circuit switching technology and working mode thereof
CN107018071A (en)*2017-03-292017-08-04合肥工业大学One kind is based on the route pattern handover configurations device of " bag circuit " switching technology
CN111817952A (en)*2019-10-112020-10-23西安电子科技大学 High Fault Tolerance and Low Delay Routing Algorithm Based on Mesh Structure
WO2022110387A1 (en)*2020-11-302022-06-02清华大学Routing apparatus, and routing device of network-on-chip
WO2022143020A1 (en)*2020-12-312022-07-07Oppo广东移动通信有限公司Chip and control method therefor, and computer-readable storage medium and electronic device

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
CN101778049A (en)*2010-03-042010-07-14南京大学Router and transmission method thereof on packet-circuit switching chip
CN105007226A (en)*2015-07-232015-10-28合肥工业大学Multicast router based on package and circuit switching technology and working mode thereof
CN107018071A (en)*2017-03-292017-08-04合肥工业大学One kind is based on the route pattern handover configurations device of " bag circuit " switching technology
CN111817952A (en)*2019-10-112020-10-23西安电子科技大学 High Fault Tolerance and Low Delay Routing Algorithm Based on Mesh Structure
WO2022110387A1 (en)*2020-11-302022-06-02清华大学Routing apparatus, and routing device of network-on-chip
WO2022143020A1 (en)*2020-12-312022-07-07Oppo广东移动通信有限公司Chip and control method therefor, and computer-readable storage medium and electronic device

Also Published As

Publication numberPublication date
CN116192733B (en)2025-03-21

Similar Documents

PublicationPublication DateTitle
EP3776231B1 (en)Procedures for implementing source based routing within an interconnect fabric on a system on chip
US5182747A (en)Method for controlling the insertion of stations into fddi network
JPH03136424A (en)Recomposition system for high-speed mesh connetion type local area network
CN113747277B (en)Path determination method and device
CN107113198A (en)Ethernet interface module
CN115883447B (en)Method and system for transmitting data on temporary circuit based on packet route establishment
US20140032731A1 (en)Recursive, All-to-All Network Topologies
CN115987918B (en)Method and system for establishing temporary circuit based on packet-switched route
US10187365B2 (en)Method for exchanging numerical data frames and associated communication system
CN116192733A (en)Data transmission method and system
KR100567309B1 (en) How to Improve Bus Usage Through Data Header Error Checking
WO2025044072A1 (en)Data transmission method, chip, and storage medium
US20220405223A1 (en)Method and system for data transactions on a communications interface
HutchisonLocal area networks: an introduction
CN115208612B (en)Complex networking safety system
KR101992713B1 (en)Communication interface apparatus
CN117714388B (en)Hybrid circuit transmission and packet transmission method and system
JPH01188137A (en) Burst communication method in throttling type LAN
CN120301816A (en) Method and device for sending routing request
CN120301817A (en) Method and device for sending routing request
RangaiahPerformance Evaluation of a Network on Chip Based on Ghz Throughput and Low Power for Streaming Data Transmission on FPGA
CN120614226A (en) Message sending method, device, system, storage medium and computer program product
CN116821044A (en)Processing system, access method and computer readable storage medium
CN119906662A (en) Thinned fat tree network topology and method for sending routing requests
CN115525598A (en)Electronic device, transmission system and transmission method

Legal Events

DateCodeTitleDescription
PB01Publication
PB01Publication
SE01Entry into force of request for substantive examination
SE01Entry into force of request for substantive examination
GR01Patent grant
GR01Patent grant

[8]ページ先頭

©2009-2025 Movatter.jp