数据发送方法及接收方法技术

技术编号:36803909 阅读:22 留言:0更新日期:2023-03-09 00:02
本申请提供一种数据发送方法和一种数据接收方法,数据发送方法应用于第一复杂可编程逻辑器件CPLD,第一CPLD通过单线与第二CPLD连接,数据发送方法包括:获取待发送的多位有效数据;将多位有效数据打包成第一数据包;以第一CPLD的主时钟为基准时钟,基于预设的通讯协议,确定第一数据包中各数据的电平信号,并向第二CPLD发送各数据的电平信号;其中,第一CPLD的主时钟与第二CPLD的主时钟相同。通过上述方法,可以减少两个CPLD之间通信时需要的信号线,使得CPLD的可通信场景较多。使得CPLD的可通信场景较多。使得CPLD的可通信场景较多。

【技术实现步骤摘要】
数据发送方法及接收方法


[0001]本申请涉及计算机
,尤其涉及一种数据发送方法及接收方法。

技术介绍

[0002]复杂的可编程逻辑元件(Complex Programmable Logic Device,CPLD)广泛应用于各种电子设备中。例如,电子设备可以为服务器、电脑等。电子设备中的多个CPLD之间可以进行数据传输。
[0003]相关技术中,电子设备中的CPLD之间可以通过串行通用输入输出(Serial General Purpose Input/Output,SGPIO)协议、或者两线式串行总线(Inter

Integrated Circuit,I2C)协议进行通信,以实现数据传输。然而,基于SGPIO协议进行通信的两个CPLD需要通过4根信号线连接,基于I2C协议进行通信的两个CPLD需要通过2根信号线连接。因此,CPLD可使用管脚较少时,两个CPLD之间无法进行通信,使得CPLD之间的可通信场景较少。

技术实现思路

[0004]本申请提供了一种数据发送方法及接收方法,上述方法可以减少两个CPLD之间通信时需要的信号线,使得CPLD的数据传输适用于更多的场景。
[0005]第一方面,本申请提供一种数据发送方法,应用于第一复杂可编程逻辑器件CPLD,所述第一CPLD通过单线与第二CPLD传输数据,所述方法包括:
[0006]获取待发送的多位有效数据;
[0007]将所述多位有效数据打包成第一数据包;
[0008]以所述第一CPLD的主时钟为基准时钟,基于预设的通讯协议,确定所述第一数据包中各数据的电平信号;
[0009]并向所述第二CPLD发送各数据的电平信号;其中,所述第一CPLD的主时钟与所述第二CPLD的主时钟相同。
[0010]上述技术方案中,第一CPLD可以将要发送的有效数据打包成第一数据包;可以确定第一数据包中各数据的电平信号;并可以通过第一CPLD与第二CPLD之间的1根信号线,向第二CPLD发送第一数据包中各数据的电平信号。通过上述方法,可以减少两个CPLD之间通信时需要的信号线,使得CPLD的可通信场景较多。
[0011]一种可能的实现方式中,针对所述第一数据包中的任意一位数据;确定所述第一数据包中的所述数据的电平信号,包括:
[0012]若所述数据为第一数据,则按照第一数据打包方式确定所述数据的电平信号;
[0013]若所述数据为第二数据,则按照第二数据打包方式确定所述数据的电平信号;
[0014]其中,所述第一数据打包方式和所述第二数据打包方式对应的波形不同。
[0015]上述技术方案中,可以通过不同的方式分别对第一数据和第二数据进行打包,使得第二CPLD可以准确识别接收的数据。
[0016]一种可能的实现方式中,所述基于预设的通讯协议,确定所述第一数据包中各数据的电平信号,包括:
[0017]当所述数据为第一数据时,所述第一数据对应的波形包括:
[0018]在前X个主时钟周期为第一电平信号,在第X+1个主时钟周期为第二电平信号,在第X+2至N个主时钟周期为第一电平信号;其中,所述X为大于或等于1的整数,所述X小于所述N。
[0019]上述技术方案中,可以通过特定的方式对第一数据进行打包,实现了对第一数据打包的目的。
[0020]一种可能的实现方式中,所述基于预设的通讯协议,确定所述第一数据包中各数据的电平信号,包括:
[0021]当所述数据为第二数据时,所述第二数据对应的波形包括:
[0022]在前X个主时钟周期为第一电平信号,在第X+1至N个主时钟周期为第二电平信号;其中,所述X为大于或等于1的整数,所述X小于所述N。
[0023]上述技术方案中,可以通过特定的方式对第二数据进行打包,实现了对第二数据打包的目的。
[0024]一种可能的实现方式中,所述第一数据包包括包头和至少一组数据,相邻的两组数据之间包括用于隔离的分割数据;
[0025]所述将所述多位有效数据打包成第一数据包,包括:
[0026]将预设包头确定为所述第一数据包的包头;
[0027]按照预设长度K,对所述多位有效数据进行分组处理,得到所述至少一组数据,并在相邻的两组数据之间插入所述分割数据,得到所述第一数据包,一组数据中包括K位数据,所述K为大于或等于1的整数。
[0028]上述技术方案中,可以通过特定的方式将多位有效数据打包成第一数据包,以实现通过数据包的形式传输数据的目的,提高了数据传输效率。
[0029]一种可能的实现方式中,所述预设包头包括K+2位数据,其中,所述预设包头的前K+1位数据为第二数据,第K+2位数据为第一数据;
[0030]所述分割数据为所述第一数据。
[0031]上述技术方案中,提供了包头和分割数据的结构形式,以便于对有效数据进行结构化处理。
[0032]一种可能的实现方式中,所述方法还包括:
[0033]接收所述第二CPLD发送的异常信息,所述异常信息中包括异常组标识,所述异常信息用于指示所述第二CPLD未接收成功异常数据组或对所述异常数据组接收错误;
[0034]根据所述异常信息,向所述第二CPLD重新发送所述异常组标识对应的一组或多组数据。
[0035]上述技术方案中,若数据包中任意一组或多组数据发送失败,第一CPLD可以根据异常信息,重新发送该一组或多组数据,避免了重新发送该数据包中所有数据,提高了数据发送效率。
[0036]第二方面,本申请提供一种数据接收方法,应用于第二复杂可编程逻辑器件CPLD,所述第二CPLD通过单线与第一CPLD传输数据,所述方法包括:
[0037]以所述第二CPLD的主时钟为基准时钟,基于预设的通讯协议,对接收到的电平信号进行采数据处理,得到多位采样数据;其中,所述第二CPLD的主时钟与所述第一CPLD的主时钟相同;
[0038]按照预设的数据包结构,对所述多个采样数据进行解析处理,以在所述多个采样数据中确定得到多位有效数据。
[0039]上述技术方案中,第二CPLD可以通过第一CPLD与第二CPLD之间的1根信号线,从第一CPLD获取多个电平信号;可以根据数据打包方式、以及多个电平信号,确定多个采样数据;并可以根据数据包的预设结构,在多个采样数据中确定多个有效数据。通过上述方法,可以减少两个CPLD之间通信时需要的信号线,使得CPLD可通信场景较多。
[0040]一种可能的实现方式中,针对任意N个主时钟周期的电平信号;对接收到的N个主时钟周期的电平信号进行采数据处理,得到对应的采样数据,包括:
[0041]在所述N个主时钟中确定前X个主时钟周期的电平信号、以及第X+1至N个主时钟周期的电平信号;
[0042]根据所述前X个主时钟周期的电平信号、以及所述第X+1至N个主时钟周期的电平信号,确定所述采样数据。
[0043]上述技术方案中本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据发送方法,其特征在于,应用于第一复杂可编程逻辑器件CPLD,所述第一CPLD通过单线与第二CPLD传输数据,所述方法包括:获取待发送的多位有效数据;将所述多位有效数据打包成第一数据包;以所述第一CPLD的主时钟为基准时钟,基于预设的通讯协议,确定所述第一数据包中各数据的电平信号;并向所述第二CPLD发送各数据的电平信号;其中,所述第一CPLD的主时钟与所述第二CPLD的主时钟相同。2.根据权利要求1所述的方法,其特征在于,一位数据对应N个主时钟周期的电平信号,所述N为大于1的整数;针对所述第一数据包中的任意一位数据;所述确定所述第一数据包中的所述数据的电平信号,包括:若所述数据为第一数据,则按照第一数据打包方式确定所述数据的电平信号;若所述数据为第二数据,则按照第二数据打包方式确定所述数据的电平信号;其中,所述第一数据打包方式和所述第二数据打包方式对应的波形不同。3.根据权利要求2所述的方法,其特征在于,所述基于预设的通讯协议,确定所述第一数据包中各数据的电平信号,包括:当所述数据为第一数据时,所述第一数据对应的波形包括:在前X个主时钟周期为第一电平信号,在第X+1个主时钟周期为第二电平信号,在第X+2至N个主时钟周期为第一电平信号;其中,所述X为大于或等于1的整数,所述X小于所述N。4.根据权利要求2所述的方法,其特征在于,所述基于预设的通讯协议,确定所述第一数据包中各数据的电平信号,包括:当所述数据为第二数据时,所述第二数据对应的波形包括:在前X个主时钟周期为第一电平信号,在第X+1至N个主时钟周期为第二电平信号;其中,所述X为大于或等于1的整数,所述X小于所述N。5.根据权利要求1

4任一项所述的方法,其特征在于,所述第一数据包包括包头和至少一组数据,相邻的两组数据之间包括用于隔离的分割数据;所述将所述多位有效数据打包成第一数据包,包括:将预设包头确定为所述第一数据包的包头;按照预设长度K,对所述多位有效数据进行分组处理,得到所述至少一组数据,并在相邻的两组数据之间插入所述分割数据,得到所述第一数据包,一组数据中包括K位数据,所述K为大于或等于1的整数。6.根据权利要求5所述的方法,其特征在于,所述预设包头包括K+2位数据,其中,所述预设包头的前K+1位数据为第二数据,第K+2位数据为第一数据;所述分割数据为所述第一数据。7.根据权利要求5

6任一项所述的方法,其特征在于,所述方法还包括:接收所述第二CPLD发送的异常信息,所述异常信息中包括异常组标识,所述异常信息用于指示所述第二CPLD未接收成功异常数据组或对所述异常数据组接收错误;根据所述异常信息,向所述第二CPLD重新发送所述异常组标识对应的所述异常数据
组。8.一种数据接收方法,其特征在于,应用于第二复杂可编程逻辑器件CPLD,所述第二CPLD通过单线与第一CPLD传输数据,所述方法包括:以所述第二CPLD的主时钟为基准时钟,基于预设的通讯协议,对接收到的电平信号进行采数据处理,得到多位采样数据;其中,所述第二CPLD的主时钟与所述第一CPLD的主时钟相同,N个主时钟周期的电平信号对应一位采...

【专利技术属性】
技术研发人员:阳美玲
申请(专利权)人:超聚变数字技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1