掌桥专利:专业的专利平台
掌桥专利
首页

数据传输方法、装置以及系统

文献发布时间:2023-06-19 09:26:02


数据传输方法、装置以及系统

技术领域

本发明涉及嵌入式设备技术领域,尤其涉及一种数据传输方法、一种数据传输装置以及一种数据传输系统。

背景技术

在多台设备例如视频处理器级联时,常会需要将某一台视频处理器接入的视频数据传输到另外一台视频处理器中,为了保证视频数据的质量和实时性,通常都会采用高速接口进行传输。此外,在视频处理器进行级联时还需要进行通信数据的传输,通常的做法是额外增加通信链路传输通信数据,例如:SPI、RS232、USB等,如图1所示,采用两种数据传输方式独立进行的数据传输方式,不仅提高了成本,还会使视频处理器之间的连接过于繁琐,不利于客户使用,且容易产生故障。

发明内容

因此,本发明实施例提出一种数据传输方法、一种数据传输装置和一种数据传输系统,以实现将通信数据和视频数据在同一通道以复用的方式进行传输。

具体地,第一方面,本发明实施例提供一种数据传输方法,包括:接收并缓存输入的通信数据包;在将所述通信数据包缓存结束之后,获取请求发送指令;在获取所述请求发送指令之后,判断当前是否有视频数据输入;当判断当前没有所述视频数据输入时,响应所述请求发送指令,将缓存的所述通信数据包通过千兆位级串行收发器经由数据传输通道发送出去;当判断当前有所述视频数据输入时,将所述视频数据通过所述千兆位级串行收发器经由同一所述数据传输通道发送出去。

现有技术中,在多台设备例如视频处理器级联时,视频数据和通信数据的传输通常采用两种数据独立传输的方式,即额外增加通信链路传输通信数据,不仅提高了成本,还会使视频处理器之间的连接过于繁琐,不利于客户使用,且容易产生故障。本发明实施例通过将通信数据和视频数据在同一通道以复用的方式进行传输,解决了设备级联需要增加通信链路传输通信数据造成连接过于繁琐的问题,降低了设备硬件的复杂度,节省了设备成本,客户在使用设备时无需增加通信链路的连接,提升了客户的体验感;此外,采用千兆位级串行收发器完成设备级联之间的数据传输,确保视频数据传输的同时依然能够保证通信数据所需要的宽带,真正实现了视频数据和通信数据在同一传输通道的复用,且不限制通信格式,提供了一个纯粹的透传通道,方便上层应用的开发,降低了开发难度。

在本发明的一个实施例中,在所述将缓存的所述通信数据包通过千兆位级串行收发器经由数据传输通道发送出去之后,还包括:发出请求输入指令,以接收并缓存再次输入的通信数据包。

第二方面,本发明实施例提供一种数据传输装置,包括:数据缓存模块,用于接收并缓存输入的通信数据包;指令获取模块,用于在将所述通信数据包缓存结束之后,获取请求发送指令;数据判断模块,用于在获取所述请求发送指令之后,判断当前是否有视频数据输入;以及当判断当前没有所述视频数据输入时,响应所述请求发送指令,将缓存的所述通信数据包通过千兆位级串行收发器经由数据传输通道发送出去;当判断当前有所述视频数据输入时,将所述视频数据通过所述千兆位级串行收发器经由同一所述数据传输通道发送出去。

现有技术中,在多台设备例如视频处理器级联时,视频数据和通信数据的传输通常采用两种数据独立传输的方式,即额外增加通信链路传输通信数据,不仅提高了成本,还会使视频处理器之间的连接过于繁琐,不利于客户使用,且容易产生故障。本发明实施例通过将通信数据和视频数据在同一通道以复用的方式进行传输,解决了设备级联需要增加通信链路传输通信数据造成连接过于繁琐的问题,降低了设备硬件的复杂度,节省了设备成本,客户在使用设备时无需增加通信链路的连接,提升了客户的体验感;此外,采用千兆位级串行收发器完成设备级联之间的数据传输,确保视频数据传输的同时依然能够保证通信数据所需要的宽带,真正实现了视频数据和通信数据在同一传输通道的复用,且不限制通信格式,提供了一个纯粹的透传通道,方便上层应用的开发,降低了开发难度。

在本发明的一个实施例中,前述数据传输装置还包括:指令发出模块,用于在所述将缓存的所述通信数据包通过千兆位级串行收发器经由数据传输通道发送出去之后,发出请求输入指令,以接收并缓存再次输入的通信数据包。

第三方面,本发明实施例提供一种数据传输装置,包括:微控制器;可编程逻辑器件,包括千兆位级串行收发器;所述可编程逻辑器件用于:接收并缓存由所述微控制器输入的通信数据包;在将所述通信数据包缓存结束之后,获取由所述微控制器发送的请求发送指令;以及在获取所述请求发送指令之后,判断当前是否有视频数据输入、并根据判断结果确定响应所述请求发送指令的时机;其中,所述根据判断结果确定响应所述请求发送指令的时机包括:当判断当前没有所述视频数据输入时,响应所述请求发送指令以将缓存的所述通信数据包通过所述千兆位级串行收发器经由数据传输通道发送出去;或当判断当前有所述视频数据输入时,等待所述视频数据通过所述千兆位级串行收发器经由同一所述数据传输通道发送完毕。

现有技术中,在多台设备例如视频处理器级联时,视频数据和通信数据的传输通常采用两种数据独立传输的方式,即额外增加通信链路传输通信数据,不仅提高了成本,还会使视频处理器之间的连接过于繁琐,不利于客户使用,且容易产生故障。本发明实施例通过将通信数据和视频数据在同一通道以复用的方式进行传输,解决了设备级联需要增加通信链路传输通信数据造成连接过于繁琐的问题,降低了设备硬件的复杂度,节省了设备成本,客户在使用设备时无需增加通信链路的连接,提升了客户的体验感;此外,采用千兆位级串行收发器完成设备级联之间的数据传输,确保视频数据传输的同时依然能够保证通信数据所需要的宽带,真正实现了视频数据和通信数据在同一传输通道的复用,且不限制通信格式,提供了一个纯粹的透传通道,方便上层应用的开发,降低了开发难度。

在本发明的一个实施例中,所述可编程逻辑器件还用于:在所述响应所述请求发送指令以将缓存的所述通信数据包通过所述千兆位级串行收发器经由数据传输通道发送出去之后,发出请求输入指令至所述微控制器,以由所述微控制器再次输入通信数据包。

第四方面,本发明实施例提供一种数据传输系统,包括:第一设备,包括:第一微控制器和连接于所述第一微控制器的第一可编程逻辑器件;所述第一可编程逻辑器件包括第一千兆位级串行收发器;第二设备,包括:第二微控制器和连接于所述第二微控制器的第二可编程逻辑器件;所述第二可编程逻辑器件包括第二千兆位级串行收发器;其中,所述第一千兆位级串行收发器连接于所述第二千兆位级串行收发器形成数据传输通道;所述第一可编程逻辑器件用于:接收并缓存由所述第一微控制器输入的通信数据包;在将所述通信数据包缓存结束之后,获取由所述第一微控制器发送的请求发送指令;以及在获取所述请求发送指令之后,判断当前是否有视频数据输入、并根据判断结果确定响应所述请求发送指令的时机;其中,所述根据判断结果确定响应所述请求发送指令的时机包括:当判断当前没有所述视频数据输入时,响应所述请求发送指令以将缓存的所述通信数据包通过所述第一千兆位级串行收发器经由所述数据传输通道发送至所述第二设备;或当判断当前有所述视频数据输入时,等待所述视频数据通过所述第一千兆位级串行收发器经由同一所述数据传输通道发送至所述第二设备完毕。

现有技术中,在多台设备例如视频处理器级联时,视频数据和通信数据的传输通常采用两种数据独立传输的方式,即额外增加通信链路传输通信数据,不仅提高了成本,还会使视频处理器之间的连接过于繁琐,不利于客户使用,且容易产生故障。本发明实施例通过将通信数据和视频数据在同一通道以复用的方式进行传输,解决了设备级联需要增加通信链路传输通信数据造成连接过于繁琐的问题,降低了设备硬件的复杂度,节省了设备成本,客户在使用设备时无需增加通信链路的连接,提升了客户的体验感;此外,采用千兆位级串行收发器完成设备级联之间的数据传输,确保视频数据传输的同时依然能够保证通信数据所需要的宽带,真正实现了视频数据和通信数据在同一传输通道的复用,且不限制通信格式,提供了一个纯粹的透传通道,方便上层应用的开发,降低了开发难度。

在本发明的一个实施例中,所述第二设备的所述第二可编程逻辑器件用于:接收由所述第一设备通过所述数据传输通道发送过来的输入数据;判断所述输入数据的数据类型;当所述输入数据为通信数据时,缓存所述通信数据包,并产生请求读取指令至所述第二微控制器,以由所述第二微控制器读取缓存的所述通信数据包;当所述输入数据为所述视频数据时,接收所述视频数据。

在本发明的一个实施例中,所述第一可编程逻辑器件还用于:在所述第二微控制器读取缓存的所述通信数据包结束之后,发出请求输入指令至所述第一微控制器,以由所述第一微控制器再次输入通信数据。

第五方面,本发明实施例提供一种数据传输系统,包括:第一数据缓存模块,用于接收并缓存输入的通信数据包;指令获取模块,用于在将所述通信数据包缓存结束之后,获取请求发送指令;第一千兆位级串行收发器;第一数据判断模块,用于在获取所述请求发送指令之后,判断当前是否有视频数据输入;以及当判断当前没有所述视频数据输入时,响应所述请求发送指令,将缓存的所述通信数据包通过所述第一千兆位级串行收发器经由数据传输通道发送出去;当判断当前有所述视频数据输入时,将所述视频数据通过所述第一千兆位级串行收发器经由同一所述数据传输通道发送出去;第二千兆位级串行收发器,用于接收经由所述第一千兆位级串行收发器发送过来的输入数据;第二数据判断模块,用于判断所述输入数据的数据类型;第二数据缓存模块,用于当所述第二数据判断模块判断所述输入数据为通信数据时,缓存所述通信数据包;视频数据接收模块,用于当所述第二数据判断模块判断所述输入数据为所述视频数据时,接收所述视频数据。

现有技术中,在多台设备例如视频处理器级联时,视频数据和通信数据的传输通常采用两种数据独立传输的方式,即额外增加通信链路传输通信数据,不仅提高了成本,还会使视频处理器之间的连接过于繁琐,不利于客户使用,且容易产生故障。本发明实施例通过将通信数据和视频数据在同一通道以复用的方式进行传输,解决了设备级联需要增加通信链路传输通信数据造成连接过于繁琐的问题,降低了设备硬件的复杂度,节省了设备成本,客户在使用设备时无需增加通信链路的连接,提升了客户的体验感;此外,采用千兆位级串行收发器完成设备级联之间的数据传输,确保视频数据传输的同时依然能够保证通信数据所需要的宽带,真正实现了视频数据和通信数据在同一传输通道的复用,且不限制通信格式,提供了一个纯粹的透传通道,方便上层应用的开发,降低了开发难度。

由上可知,本发明上述技术方案特征可以具有如下一个或多个有益效果:通过将通信数据和视频数据在同一通道以复用的方式进行传输,解决了设备级联需要增加通信链路传输通信数据造成连接过于繁琐的问题,降低了设备硬件的复杂度,节省了设备成本,客户在使用设备时无需增加通信链路的连接,提升了客户的体验感;此外,采用千兆位级串行收发器完成设备级联之间的数据传输,确保视频数据传输的同时依然能够保证通信数据所需要的宽带,真正实现了视频数据和通信数据在同一传输通道的复用,且不限制通信格式,提供了一个纯粹的透传通道,方便上层应用的开发,降低了开发难度。

通过以下参考附图的详细说明,本发明的其它方面和特征变得明显。但是应当知道,该附图仅仅为解释的目的设计,而不是作为本发明的范围的限定。还应当知道,除非另外指出,不必要依比例绘制附图,它们仅仅力图概念地说明此处描述的结构和流程。

附图说明

此处所说明的附图用来提供对本发明的进一步理解,构成本发明的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1为现有相关技术方案中视频处理器级联的数据传输示意图;

图2为本发明第一实施例提供的数据传输方法的流程示意图;

图3为本发明第一实施例提供的数据传输方法的具体实施方式的结构示意图;

图4为本发明第二实施例提供的数据传输装置的结构示意图;

图5为本发明第三实施例提供的数据传输装置的结构示意图;

图6为本发明第四实施例提供的数据传输系统的结构示意图;

图7为本发明第四实施例提供的数据传输系统的具体实施方式的结构示意图;

图8为本发明第五实施例提供的数据传输系统的结构示意图。

【附图标记说明】

S11-S15:数据传输方法的流程步骤;

20:数据传输装置;21:数据缓存模块;22:指令获取模块;23:数据判断模块;

30:数据传输装置;31:微控制器;32:可编程逻辑器件;321:千兆位级串行收发器;

40:数据传输系统;41:设备;411:微控制器;412:可编程逻辑器件;4121:千兆位级串行收发器;42:设备;421:微控制器;422:可编程逻辑器件;4221:千兆位级串行收发器;

50:数据传输系统;51:数据缓存模块;52:指令获取模块;53:数据判断模块;54:千兆位级串行收发器;55:千兆位级串行收发器;56:数据判断模块;57:数据缓存模块;58:视频数据接收模块。

具体实施方式

为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图对本发明的具体实施方式做详细的说明。

为了使本领域普通技术人员更好地理解本发明的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。

需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应当理解这样使用的术语在适当情况下可以互换,以便这里描述的本发明实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其他步骤或单元。

【第一实施例】

参见图1,本发明第一实施例提出一种数据传输方法。如图1所示,数据传输方法例如包括步骤S11至步骤S15。

步骤S11:接收并缓存输入的通信数据包;

步骤S12:在将所述通信数据包缓存结束之后,获取请求发送指令;

步骤S13:在获取所述请求发送指令之后,判断当前是否有视频数据输入;

步骤S14:当判断当前没有所述视频数据输入时,响应所述请求发送指令,将缓存的所述通信数据包通过千兆位级串行收发器经由数据传输通道发送出去;

步骤S15:当判断当前有所述视频数据输入时,将所述视频数据通过所述千兆位级串行收发器经由同一所述数据传输通道发送出去。

进一步地,在步骤S14之后,本实施例提供的数据传输方法例如还包括:发出请求输入指令,以接收并缓存再次输入的通信数据包。

具体地,步骤S11中提到的通信数据包例如由MCU(Microcontroller Unit:微控制单元)发送的通信数据包。提到的缓存输入的通信数据包例如将通信数据包缓存到FPGA(Field-Programmable Gate Array,现场可编程门阵列)内置的RAM存储器中。步骤S12中提到的请求发送指令例如为当MCU将一个通信数据包中的通信数据全部写入FPGA内置的RAM存储器后,会发送一个请求发送指令(例如数据包缓存完毕信号“Packet End”)给FPGA,表示当前的通信数据包已经写好,可以准备进行传输。步骤S13中提到的视频数据例如经由上位机等设备发送过来的视频数据,此处并不限制视频数据的数据类型。步骤S14中提到的千兆位级串行收发器例如为GTx(Gigabit Transceiver)收发器。其中,GTx收发器可以支持1080P(分辨率为1920*1080)、4K1K(分辨率为3840*1080)以及4K2K(分辨率为3840*2160)视频数据的传输。提到的数据传输通道的有效带宽例如为9.7Gbps(64B66B编码,计算公式=10Gbps*64/66)。其中,GTx收发器的位宽例如为64BIT,那么GTx收发器的有效位宽为48BIT,所以视频数据的有效利用带宽为9.7Gbps*0.75=7.275Gbps。假定1路1080P视频数据去除消隐的有效带宽为:1920*1080*24(BIT)*60(Hz)=2.99Gbps;在一个数据传输通道上可以传输2路1080P视频数据,所以剩余带宽为:7.275Gbps-5.98Gbps=1.295Gbps;而MCU通信的位宽为8BIT,留给通信数据的带宽为8/64*1.295Gbps=161.875Mbps。综上所述,1个带宽9.7Gbps的GTX收发器,用于传输视频数据的带宽为5.98Gbps,用于传输通信数据的带宽为161.875Mbps。前述提到的请求输入指令例如为当FPGA将缓存的通信数据包发送出去之后,会发出一个请求输入指令(例如通信数据包发送完毕信号“Send Ready”)至MCU,MCU收到请求输入指令后会再次向FPGA发送通信数据包,供FPGA接收缓存。

为了更好地理解本实施例,下面结合图3对本实施例提供的数据传输方法的具体实施方式进行详细说明。

本实施例提供的数据传输方法例如在视频处理器中实现。如图3所示,首先,视频处理器的FPGA中通信数据输入接口开放给MCU为固定地址,视频处理器中MCU按照这一固定地址将产生通信数据包传输至FPGA的通信数据输入接口,FPGA经由通信数据输入接口将通信数据包缓存至RAM存储器中。举例而言,RAM存储器的存储大小例如为MCU支持的最大通信数据包的两倍,以满足至少可以在RAM存储器中保存1或2个完整的通信数据包。然后,MCU会产生并发送一个请求发送指令(例如数据包缓存完毕信号“Packet End”)至FPGA内部的GTx仲裁模块,以通知GTx仲裁模块当前通信数据包已经准备好可以进行传输。GTx仲裁模块接收到请求发送指令后,会判断视频数据输入接口有没有视频数据输入,当判断有视频数据输入时,优先将视频数据经由GTx收发器发送出去,当判断没有视频数据输入时,将RAM存储器中保存的通信数据包经由GTx收发器发送出去。当GTx仲裁模块将通信数据包发送出去之后,会产生一个请求输入指令(例如通信数据包发送完毕信号“Send Ready”)到MCU,MCU接收到请求输入指令后,会继续将新的通信数据包经由通信数据输入接口写入RAM存储器中。

需要说明的是,FPGA内部的GTx仲裁模块具有类似于一个2选1选择器的功能,视频数据的优先级高于通信数据,所以一旦由视频数据输入,优先输出视频数据。此外,RAM存储器中缓存的通信数据包例如每次只缓存一个通信数据包中的所有通信数据。当然本实施例并不以此为限,用户可以根据需要进行通信数据包数据的缓存。

综上所述,本发明第一实施例提供的数据传输方法通过将通信数据和视频数据在同一通道以复用的方式进行传输,解决了设备级联需要增加通信链路传输通信数据造成连接过于繁琐的问题,降低了设备硬件的复杂度,节省了设备成本,客户在使用设备时无需增加通信链路的连接,提升了客户的体验感;此外,采用千兆位级串行收发器完成设备级联之间的数据传输,确保视频数据传输的同时依然能够保证通信数据所需要的宽带,真正实现了视频数据和通信数据在同一传输通道的复用,且不限制通信格式,提供了一个纯粹的透传通道,方便上层应用的开发,降低了开发难度。

【第二实施例】

参见图4,本发明第二实施例提供一种数据传输装置。如图4所示,数据传输装置20例如包括:数据缓存模块21、指令获取模块22和数据判断模块23。

其中,数据保存模块21用于接收并缓存输入的通信数据包。指令获取模块22用于在将所述通信数据包缓存结束之后,获取请求发送指令。数据判断模块23用于用于在获取所述请求发送指令之后,判断当前是否有视频数据输入;以及当判断当前没有所述视频数据输入时,响应所述请求发送指令,将缓存的所述通信数据包通过千兆位级串行收发器经由数据传输通道发送出去;当判断当前有所述视频数据输入时,将所述视频数据通过所述千兆位级串行收发器经由同一所述数据传输通道发送出去。

进一步地,数据传输装置20例如还包括指令发出模块(图中未示出),指令发出模块用于在所述将缓存的所述通信数据包通过千兆位级串行收发器经由数据传输通道发送出去之后,发出请求输入指令,以接收并缓存再次输入的通信数据包。

需要说明的是,本实施例提供的数据传输装置20所实现的数据传输方法如前述第一实施例所述,故在此不再进行详细讲述。可选地,第二实施例中的各个模块和上述其他操作或功能分别为了实现本发明第一实施例中的方法,为了简洁,不在此赘述。

综上所述,本发明第二实施例提供的数据传输装置20通过将通信数据和视频数据在同一通道以复用的方式进行传输,解决了设备级联需要增加通信链路传输通信数据造成连接过于繁琐的问题,降低了设备硬件的复杂度,节省了设备成本,客户在使用设备时无需增加通信链路的连接,提升了客户的体验感;此外,采用千兆位级串行收发器完成设备级联之间的数据传输,确保视频数据传输的同时依然能够保证通信数据所需要的宽带,真正实现了视频数据和通信数据在同一传输通道的复用,且不限制通信格式,提供了一个纯粹的透传通道,方便上层应用的开发,降低了开发难度。

【第三实施例】

参见图5,本发明第三实施例提供了一种数据传输装置。如图5所示,数据传输装置30例如包括:微控制器31和连接于微控制器31的可编程逻辑器件32。其中,可编程逻辑器件32例如包括千兆位级串行收发器321。

具体地,可编程逻辑器件32用于实现如前述第一实施例所述的数据传输方法,举例而言,可编程逻辑器件用于:

(i)接收并缓存由所述微控制器输入的通信数据包;

(ii)在将所述通信数据包缓存结束之后,获取由所述微控制器发送的请求发送指令;

(iii)在获取所述请求发送指令之后,判断当前是否有视频数据输入、并根据判断结果确定响应所述请求发送指令的时机;

其中,所述根据判断结果确定响应所述请求发送指令的时机包括:当判断当前没有所述视频数据输入时,响应所述请求发送指令以将缓存的所述通信数据包通过千兆位级串行收发器321经由数据传输通道发送出去;或当判断当前有所述视频数据输入时,等待所述视频数据通过千兆位级串行收发器321经由同一所述数据传输通道发送完毕。

进一步地,可编程逻辑器件32还用于:在所述响应所述请求发送指令以将缓存的所述通信数据包通过千兆位级串行收发器321经由数据传输通道发送出去之后,发出请求输入指令至微控制器31,以由微控制器31再次输入通信数据包。

其中,微控制器31例如为MCU(Microcontroller Unit:微控制单元),又称单片微型计算机(Single Chip Microcomputer)或者单片机。或者,是其他具有一定的数据处理及运算能力的微处理器,比如ARM处理器和DSP处理器等。可编程逻辑器件32例如为FPGA(Field-Programmable Gate Array,现场可编程门阵列)或其他类似逻辑器件。千兆位级串行收发器321例如为GTx收发器。GTx收发器可以支持1080P(分辨率为1920*1080)、4K1K(分辨率为3840*1080)以及4K2K(分辨率为3840*2160)视频数据的传输。提到的数据传输通道的有效带宽例如为9.7Gbps(64B66B编码,计算公式=10Gbps*64/66),其中,GTx收发器的位宽例如为64BIT,那么GTx收发器的有效位宽为48BIT,所以视频数据的有效利用带宽为9.7Gbps*0.75=7.275Gbps。假定1路1080P视频数据去除消隐的有效带宽为:1920*1080*24(BIT)*60(Hz)=2.99Gbps;在一个数据传输通道上可以传输2路1080P视频数据,所以剩余带宽为:7.275Gbps-5.98Gbps=1.295Gbps;而MCU通信的位宽为8BIT,留给通信数据的带宽为8/64*1.295Gbps=161.875Mbps。综上所述,1个带宽9.7Gbps的GTX收发器用于传输视频数据的带宽为5.98Gbps以及用于传输通信数据的带宽为161.875Mbps。

需要说明的是,本实施例中可编程逻辑器件32其用于实现如第一实施例所述的数据传输方法,具体所采用的数据传输方法的介绍可参考第一实施例。本实施例中不再对其进行重复介绍。

综上所述,本发明第三实施例提供的数据传输装置30通过将通信数据和视频数据在同一通道以复用的方式进行传输,解决了设备级联需要增加通信链路传输通信数据造成连接过于繁琐的问题,降低了设备硬件的复杂度,节省了设备成本,客户在使用设备时无需增加通信链路的连接,提升了客户的体验感;此外,采用千兆位级串行收发器例如GTx收发器完成设备级联之间的数据传输,确保视频数据传输的同时依然能够保证通信数据所需要的宽带,真正实现了视频数据和通信数据在同一传输通道的复用,且不限制通信格式,提供了一个纯粹的透传通道,方便上层应用的开发,降低了开发难度。

【第四实施例】

参见图6,本发明第四实施例提供了一种数据传输系统。如图6所示,数据传输系统40例如包括:设备41和设备42。

其中,设备41例如包括:微控制器411和连接于微控制器411的可编程逻辑器件412。可编程逻辑器件412包括千兆位级串行收发器4121。设备42例如包括:微控制器421和连接于微控制器421的可编程逻辑器件422。可编程逻辑器件422包括千兆位级串行收发器4221。其中,千兆位级串行收发器4121连接于千兆位级串行收发器4221形成数据传输通道。可编程逻辑器件412用于实现如前述第一实施例所述的数据传输方法,举例而言,可编程逻辑器件412用于:

(i)接收并缓存由微控制器411输入的通信数据包;

(ii)在将所述通信数据包缓存结束之后,获取由微控制器411发送的请求发送指令;

(iii)在获取所述请求发送指令之后,判断当前是否有视频数据输入、并根据判断结果确定响应所述请求发送指令的时机;

其中,所述根据判断结果确定响应所述请求发送指令的时机包括:当判断当前没有所述视频数据输入时,响应所述请求发送指令以将缓存的所述通信数据包通过千兆位级串行收发器4121经由所述数据传输通道发送至设备42;或当判断当前有所述视频数据输入时,等待所述视频数据通过千兆位级串行收发器4121经由同一所述数据传输通道发送至设备42完毕。

进一步地,第二设备42的可编程逻辑器件422用于:接收由设备41通过所述数据传输通道发送过来的输入数据,判断所述输入数据的数据类型,当所述输入数据为通信数据时,保存所述通信数据包,并产生请求读取指令至微控制器421,以由微控制器421读取缓存的所述通信数据包,当所述输入数据为所述视频数据时,接收所述视频数据。

进一步地,设备41的可编程逻辑器件412还用于:在微控制器421读取缓存的所述通信数据包结束之后,发出请求输入指令至微控制器411,以由微控制器411再次输入通信数据包。

其中,微控制器411/421例如为MCU(Microcontroller Unit:微控制单元),又称单片微型计算机(Single Chip Microcomputer)或者单片机。或者,是其他具有一定的数据处理及运算能力的微处理器,比如ARM处理器和DSP处理器等。可编程逻辑器件412/422例如为FPGA(Field-Programmable Gate Array,现场可编程门阵列)或其他类似逻辑器件。千兆位级串行收发器4121/4221例如为GTx收发器。GTx收发器可以支持1080P(分辨率为1920*1080)、4K1K(分辨率为3840*1080)以及4K2K(分辨率为3840*2160)视频数据的传输。提到的数据传输通道的有效带宽例如为9.7Gbps(64B66B编码,计算公式=10Gbps*64/66),其中,GTx收发器的位宽例如为64BIT,那么GTx收发器的有效位宽为48BIT,所以视频数据的有效利用带宽为9.7Gbps*0.75=7.275Gbps。假定1路1080P视频数据去除消隐的有效带宽为:1920*1080*24(BIT)*60(Hz)=2.99Gbps;在一个数据传输通道上可以传输2路1080P视频数据,所以剩余带宽为:7.275Gbps-5.98Gbps=1.295Gbps;而MCU通信的位宽为8BIT,留给通信数据的带宽为8/64*1.295Gbps=161.875Mbps。综上所述,1个带宽9.7Gbps的GTX收发器用于传输视频数据的带宽为5.98Gbps以及用于传输通信数据的带宽为161.875Mbps。

需要说明的是,本实施例提供的数据传输系统40中设备41的可编程逻辑器件412其用于实现如第一实施例所述的数据传输方法,具体可编程逻辑器件412所采用的数据传输方法的介绍可参考第一实施例。为了简洁,本实施例中不再对其进行重复介绍。

为了更好地理解本实施例,下面结合图7对本实施例提供的数据传输系统40的具体实施方式进行详细说明。

本实施例提供的数据传输系统例如由两个视频处理器级联组成的数据传输系统。

如图7所示,对于视频处理器A而言,视频处理器A的MCU将产生通信数据包传输至FPGA的通信数据输入接口,FPGA经由通信数据输入接口将通信数据包保存至RAM存储器中。举例而言,RAM存储器的存储大小例如为MCU支持的最大通信数据包的两倍,以满足至少可以在RAM存储器中保存1或2个完整的通信数据包。然后,MCU会产生并发送一个请求发送指令(例如数据包缓存完毕信号“Packet End”)至FPGA内部的GTx仲裁模块,以通知GTx仲裁模块当前通信数据包已经准备好可以进行传输。GTx仲裁模块接收到请求发送指令后,会判断视频数据输入接口有没有视频数据输入,当判断有视频数据输入时,优先将视频数据经由GTx收发器传输至视频处理器B,当判断没有视频数据输入时,将存储器中保存的通信数据包经由GTx收发器传输至视频处理器B。

对于视频处理器B而言,其FPGA内部的GTx收发器并不知道视频处理器A传输过来的数据是什么数据类型,所以GTx收发器会将接收视频处理器A发送过来的输入数据传输至内部的GTx仲裁模块,GTx仲裁模块会判断输入数据的数据类型,当输入数据为视频数据时,经由视频数据输出接口接收视频数据,当输入数据为通信数据时,将通信数据包存储至RAM存储器中,并当将发送过来的通信数据包缓存结束时,GTx仲裁模块发送请求读取指令(例如包结束信号“Tnterrupt Gen”)给MCU,告知MCU当前通信数据包已经准备好可以进行读取,即当MCU接收请求读取指令后,会产生MCU中断,以便于MCU对RAM存储器进行操作。在MCU读取RAM存储器中缓存的通信数据时,可以实时获取数据缓存状态(例如数据计数信号“Data Count”),以实时查看RAM存储器中缓存的通信数据的数据长度。当MCU将RAM存储器中缓存的通信数据读取完时,会反馈至视频处理器A的GTx仲裁模块,此时,视频处理器A的GTx仲裁模块会发出请求输入指令(例如通信数据包发送完毕信号“Send Ready”)至视频处理器A的MCU,使得MCU再次输入通信数据包至FPGA。

需要说明的是,视频处理器A的FPGA内部的GTx仲裁模块具有类似于一个2选1选择器的功能,视频数据的优先级高于通信数据,所以一旦由视频数据输入,优先输出视频数据。此外,视频处理器A的FPGA内部的RAM存储器中保存的通信数据包例如每次只保存一个通信数据包中的所有通信数据。当然本实施例并不以此为限,用户可以根据需要进行通信数据包数量的保存。

此外,视频处理器A的GTx仲裁模块也可以在发送RAM存储器中缓存的通信数据包结束之后,直接发出请求输入指令(例如发送完毕信号“Send Ready”)至视频处理器A的MCU中,使得MCU再次输入通信数据包至FPGA。

综上所述,本发明第四实施例提供的数据传输系统40通过将通信数据和视频数据在同一通道以复用的方式进行传输,解决了设备级联需要增加通信链路传输通信数据造成连接过于繁琐的问题,降低了设备硬件的复杂度,节省了设备成本,客户在使用设备时无需增加通信链路的连接,提升了客户的体验感;此外,采用千兆位级串行收发器完成设备级联之间的数据传输,确保视频数据传输的同时依然能够保证通信数据所需要的宽带,真正实现了视频数据和通信数据在同一传输通道的复用,且不限制通信格式,提供了一个纯粹的透传通道,方便上层应用的开发,降低了开发难度。

【第五实施例】

参见图8,本发明第五实施例提供一种数据传输系统。如图8所示,数据传输系统50例如包括:数据缓存模块51、指令获取模块52、数据判断模块53、千兆位级串行收发器54、千兆位级串行收发器55、数据判断模块56、数据缓存模块57和视频数据接收模块58。

具体地,数据缓存模块51用于接收并缓存输入的通信数据包。指令获取模块52用于在将所述通信数据包缓存结束之后,获取请求发送指令。数据判断模块53用于在获取所述请求发送指令之后,判断当前是否有视频数据输入;以及当判断当前没有所述视频数据输入时,响应所述请求发送指令,将缓存的所述通信数据包通过千兆位级串行收发器54经由数据传输通道发送出去;当判断当前有所述视频数据输入时,将所述视频数据通过千兆位级串行收发器54经由同一所述数据传输通道发送出去。千兆位级串行收发器55用于接收经由千兆位级串行收发器54发送过来的输入数据。数据判断模块56用于判断所述输入数据的数据类型。数据缓存模块57用于当数据判断模块56判断所述输入数据为通信数据时,缓存所述通信数据包。视频数据接收模块58用于当数据判断模块56判断所述输入数据为所述视频数据时,接收所述视频数据。

需要说明的是,本实施例提供的数据传输系统50的部分模块可以实现如第一实施例所述的数据传输方法,对于数据传输方法的具体描述可参考第一实施例,为了简洁,在此不再赘述。

综上所述,本发明第五实施例提供的数据传输系统50通过将通信数据和视频数据在同一通道以复用的方式进行传输,解决了设备级联需要增加通信链路传输通信数据造成连接过于繁琐的问题,降低了设备硬件的复杂度,节省了设备成本,客户在使用设备时无需增加通信链路的连接,提升了客户的体验感;此外,采用千兆位级串行收发器完成设备级联之间的数据传输,确保视频数据传输的同时依然能够保证通信数据所需要的宽带,真正实现了视频数据和通信数据在同一传输通道的复用,且不限制通信格式,提供了一个纯粹的透传通道,方便上层应用的开发,降低了开发难度。

另外,值得一提的是,本发明前述实施例提及的千兆位级串行收发器除GTx收发器之外,也可以采用其他千兆位级串行收发器。

需要说明的是,在本发明所提供的几个实施例中,应该理解到,所揭露的系统,装置和/或方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多路单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多路网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元/模块可以集成在一个处理单元/模块中,也可以是各个单元/模块单独物理存在,也可以两个或两个以上单元/模块集成在一个单元/模块中。上述集成的单元/模块既可以采用硬件的形式实现,也可以采用硬件加软件功能单元/模块的形式实现。

上述以软件功能单元/模块的形式实现的集成的单元/模块,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)的一个或多个处理器执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,仅是本发明的较佳实施例而已,并非对本发明作任何形式上的限制,虽然本发明已以较佳实施例揭露如上,然而并非用以限定本发明,任何熟悉本专业的技术人员,在不脱离本发明技术方案范围内,当可利用上述揭示的技术内容做出些许更动或修饰为等同变化的等效实施例,但凡是未脱离本发明技术方案内容,依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化与修饰,均仍属于本发明技术方案的范围内。

相关技术
  • 传输装置、数据获取装置、由调温装置和数据获取装置构成的系统、电池系统以及状态数据传输方法
  • 数据记录介质、数据记录方法、数据处理设备、数据发送方法和数据发送设备、数据传输方法和数据传输设备,以及数据发送系统和数据通信系统
技术分类

06120112159297