通信系统

文档序号:510392 发布日期:2021-05-28 浏览:19次 >En<

阅读说明:本技术 通信系统 (Communication system ) 是由 杜增权 黄平 于 2021-04-06 设计创作,主要内容包括:本公开涉及一种通信系统,所述系统包括第一组件、第二组件及至少一个第三组件,第二组件与第一组件之间通过第一SPI线路通信,第一组件与至少一个第三组件之间通过至少一个第二SPI线路通信,第二组件通过第一SPI线路发送跨芯片通信开始指示到第一组件后,第一组件建立所述第一SPI线路与所述第二SPI线路的连接关系,使得第二组件通过SPI通信直接对第三组件进行写操作或读操作,第三组件在通过SPI通信接收到第二组件的读数据指令的情况下,直接发送目标数据到第二组件。本公开可以缩短第二组件与第三组件的收发通信时间,可以高效率的实现跨芯片直连通信,且操作简便,成本较低。(The utility model relates to a communication system, the system includes first subassembly, second subassembly and at least one third subassembly, communicate through first SPI circuit between second subassembly and the first subassembly, communicate through at least one second SPI circuit between first subassembly and the at least one third subassembly, after the second subassembly sends through first SPI circuit and crosses chip communication beginning instruction to first subassembly, first subassembly establishes first SPI circuit with the relation of connection of second SPI circuit for the second subassembly directly writes the operation or reads the operation to the third subassembly through SPI communication, the third subassembly is under the condition of the read data instruction of receiving the second subassembly through SPI communication, directly send target data to the second subassembly. The receiving and sending communication time of the second assembly and the third assembly can be shortened, cross-chip direct communication can be efficiently realized, the operation is simple and convenient, and the cost is lower.)

通信系统

技术领域

本公开涉及通信技术领域,尤其涉及一种通信系统。

背景技术

在双芯片级联应用中,针对上位机芯片向两个级联下位机芯片写入同样数据的需求(如下载程序代码),如图1所示,相关技术通常的做法是:上位机先写数据到下位机芯片/级联主芯片存储区,完成写数据到主芯片,然后再由级联主芯片操控级联芯片间的通信,读取存储区数据写入级联从芯片,完成写数据到从芯片,针对上位机芯片从级联的从机芯片读取数据的需求,相关技术通常的做法是:上位机与主芯片通信,通过第一个通信连接发送读取从芯片数据请求给主芯片,主芯片接收读取从芯片数据请求后,再通过第二个通信连接通信,发送读取从芯片数据请求给从芯片,让从芯片准备好读取数据发送,主芯片通过第二个通信连接通信,发送读操作,读取从芯片数据,存在主芯片存储,上位机确定主芯片读取数据完成后,再发送读操作,读取存在主芯片存储的从芯片数据。

相关技术中,上位机与下位机从芯片通信需要经过主芯片存储后,再中转传输给从芯片,需要消耗2倍时间,并需要多级操作,可见,相关技术存在耗时长、效率低、操作麻烦等问题。

发明内容

有鉴于此,本公开提出了一种通信系统,所述系统包括第一组件、第二组件及至少一个第三组件,所述第一组件与所述第二组件之间通过第一串行外设接口SPI线路通信,所述第一组件与所述至少一个第三组件之间通过至少一个第二SPI线路通信,其中,

所述第二组件用于发送SPI通信信息,所述SPI通信信息用于对所述第二组件及所述第三组件写入数据或仅对所述第三组件读数据或写数据;

所述第一组件用于:接收所述第二组件发送的SPI通信信息,在所述SPI通信信息中包括跨芯片通信开始指示的情况下,建立所述第一SPI线路与所述第二SPI线路的连接关系,以使得所述第二组件建立与所述第一组件及所述第三组件的直接SPI连接;

所述第三组件用于:通过所述第二SPI线路直接接收所述第二组件发送的SPI通信信息,在所述SPI通信息中包括读数据指令的情况下,发送目标数据。

在一种可能的实施方式中,所述第三组件发送所述目标数据相较于所述第二组件接收所述目标数据提前N/2个时钟周期,其中,N为整数。

在一种可能的实施方式中,所述SPI通信信息包括SPI时钟信号及片选信号,所述第三组件还用于:

在接收到所述片选信号时,发送所述目标数据的第一个比特,从所述SPI时钟信号的第一个下降沿开始,在所述SPI的时钟信号的下降沿发送所述目标数据其余数据位。

在一种可能的实施方式中,所述第二组件还用于:

在发送所述SPI通信信息的时钟信号后的第一个上升沿开始接收所述目标数据,

其中,所述SPI时钟信号的半周期时长大于或等于所述SPI通信信息的下行信号延迟时间、所述目标数据上行延迟时间及所述第二组件获取所述目标数据时的采样建立时间之和。

在一种可能的实施方式中,所述SPI通信信息包括SPI时钟信号及片选信号,

所述第三组件还用于:从所述SPI时钟信号的第一个上降沿开始,发送所述目标数据;

所述第二组件还用于:在发送所述SPI通信信息的时钟信号后的第一个下升沿开始接收所述目标数据,

其中,所述第二组件发出所述SPI通信信息与接收到所述目标数据之间的时间差为二分之一个时钟周期,

其中,所述SPI时钟信号的半周期时长大于或等于所述SPI通信信息的下行信号延迟时间、所述目标数据上行延迟时间及所述第二组件获取所述目标数据时的采样建立时间之和。

在一种可能的实施方式中,所述SPI通信信息包括SPI时钟信号及片选信号,所述第三组件还用于:

在接收到所述片选信号时,发送所述目标数据的第一个比特,从所述SPI时钟信号的第一个上降沿开始,在所述SPI的时钟信号的上降沿发送所述目标数据其余数据位。

在一种可能的实施方式中,所述第二组件还用于:

在发送所述SPI通信信息的时钟信号后的第一个上升沿开始接收所述目标数据,

其中,所述SPI时钟信号的周期时长大于或等于所述SPI通信信息从所述第二组件到所述第三组件的下行信号延迟时间、所述目标数据从所述第三组件到所述第二组件的上行延迟时间及所述第二组件获取所述目标数据时的采样建立时间之和。

在一种可能的实施方式中,所述SPI通信信息包括SPI时钟信号及片选信号,

所述第三组件还用于:从所述SPI时钟信号的第一个下降沿开始,发送所述目标数据;

所述第二组件还用于:在发送所述SPI通信信息的时钟信号后的第一个下升沿开始接收所述目标数据,

其中,所述第二组件发出所述SPI通信信息与接收到所述目标数据之间的时间差为一个时钟周期,

其中,所述SPI时钟信号的周期时长大于或等于所述SPI通信信息从所述第二组件到所述第三组件的下行信号延迟时间、所述目标数据从所述第三组件到所述第二组件的上行延迟时间及所述第二组件获取所述目标数据时的采样建立时间之和。

在一种可能的实施方式中,所述SPI通信信息包括SPI时钟信号及片选信号,所述第三组件还用于:

在接收到所述片选信号后,对所述SPI时钟信号计数,从所述SPI时钟信号的第七个时钟周期的上升沿开始,在所述SPI时钟信号的上升沿发送所述目标数据。

在一种可能的实施方式中,所述第一组件还用于:

对所述第三组件发送的所述目标数据进行暂存,并在接收到所述目标数据的下一个SPI时钟信号的上升沿发送所述目标数据。

在一种可能的实施方式中,所述第三组件还用于:

在接收到所述片选信号后,发送冗余数据的第一个比特,并从所述SPI时钟信号的第一个下降沿或上升沿到第六个下降沿或上升沿发送所述冗余数据的其余位。

在一种可能的实施方式中,所述第二组件还用于:

在发送所述SPI通信信息的时钟信号后的第九个上升沿开始接收所述目标数据,

其中,所述SPI时钟信号的周期时长大于或等于所述SPI通信信息从所述第一组件到所述第三组件的下行信号延迟时间、所述目标数据从所述第三组件到所述第一组件的上行延迟时间及所述第二组件获取所述目标数据时的采样建立时间之和,

其中,所述SPI时钟信号的周期时长大于或等于所述SPI通信信息从所述第二组件到所述第一组件的下行信号延迟时间、所述目标数据从所述第一组件到所述第二组件的上行延迟时间及所述第二组件获取所述目标数据时的采样建立时间之和。

在一种可能的实施方式中,所述SPI通信信息包括SPI时钟信号及片选信号,

所述第三组件还用于:从所述SPI时钟信号的第七个时钟周期的下升沿开始,在所述SPI时钟信号的下升沿发送所述目标数据;

所述第一组件还用于:对所述第三组件发送的所述目标数据进行暂存,并在接收到所述目标数据的下一个SPI时钟信号的上升沿发送所述目标数据;

所述第二组件还用于:在发送所述SPI通信信息的时钟信号后的第九个下升沿开始接收所述目标数据,

其中,所述第二组件发出所述SPI通信信息与接收到所述目标数据之间的时间差为两个时钟周期,

其中,所述SPI时钟信号的周期时长大于或等于所述SPI通信信息从所述第一组件到所述第三组件的下行信号延迟时间、所述目标数据从所述第三组件到所述第一组件的上行延迟时间及所述第二组件获取所述目标数据时的采样建立时间之和,

其中,所述SPI时钟信号的周期时长大于或等于所述SPI通信信息从所述第二组件到所述第一组件的下行信号延迟时间、所述目标数据从所述第一组件到所述第二组件的上行延迟时间及所述第二组件获取所述目标数据时的采样建立时间之和。

在一种可能的实施方式中,所述第三组件还用于:

在接收到所述片选信号后,发送冗余数据的第一个比特,并从所述SPI时钟信号的第一个下降沿或上升沿到第六个下降沿或上升沿发送所述冗余数据的其余位。

在一种可能的实施方式中,当所述第一SPI线路及所述第二SPI建立连接时,所述第一组件还用于:

在接收的SPI通信信息中包括跨芯片通信停止指示的情况下,断开所述第一SPI线路与所述第二SPI线路的连接关系。

在一种可能的实施方式中,所述第一组件中包括线路切换开关,所述第一组件还用于:

在所述SPI通信信息中包括跨芯片通信开始指示的情况下,通过所述切换开关建立所述第一SPI线路与所述第二SPI线路的连接关系。

在一种可能的实施方式中,所述第一组件还用于:

在接收的SPI通信信息中包括跨芯片通信停止指示的情况下,通过所述切换开关断开所述第一SPI线路与所述第二SPI线路的连接关系。

在一种可能的实施方式中,所述第一组件、所述第三组件包括显示器、智能手机或便携设备,所述第二组件包括上位机。

在一种可能的实施方式中,所述显示器包括液晶显示器、有机发光二极管显示器、量子点发光二极管显示器、迷你发光二极管显示器和微发光二极管显示器的任意一种。

本公开实施例可以根据第二组件的SPI通信信息包含的跨芯片通信开始指示,将第二组件从第一SPI线路切换到第二SPI线路,使得第二组件与第一组件、第三组件均直接连接,这样,当第二组件向第一组件、第三组件同时发送SPI通信信息时,第三组件可以与第一组件同步收到第二组件发送的相同的SPI通信信息,达到广播的目的,并且,当第二组件要读取第三组件的数据时,第二组件可以更快速地将读取指令发送到第三组件,第三组件也可更快响应读取指令返回数据到第二组件,本公开实施例的通信系统,相较于相关技术,节约了通信时间,具有高效性,且操作简便,成本较低。

根据下面参考附图对示例性实施例的详细说明,本公开的其它特征及方面将变得清楚。

附图说明

包含在说明书中并且构成说明书的一部分的附图与说明书一起示出了本公开的示例性实施例、特征和方面,并且用于解释本公开的原理。

图1示出了相关技术中对级联芯片写入数据的示意图。

图2a示出了根据本公开一实施例的通信系统的框图。

图2b示出了根据本公开一实施例的通信系统的框图。

图3示出了根据本公开一实施例的写数据传输的示意图。

图4示出了根据本公开一实施例的读数据传输的示意图。

图5示出了根据本公开一实施例的读数据传输的示意图。

图6示出了根据本公开一实施例的读数据传输的示意图。

具体实施方式

以下将参考附图详细说明本公开的各种示例性实施例、特征和方面。附图中相同的附图标记表示功能相同或相似的元件。尽管在附图中示出了实施例的各种方面,但是除非特别指出,不必按比例绘制附图。

在本公开的描述中,需要理解的是,术语“长度”、“宽度”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本公开和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本公开的限制。

此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本公开的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。

在本公开中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”、“固定”等术语应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或成一体;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本公开中的具体含义。

在这里专用的词“示例性”意为“用作例子、实施例或说明性”。这里作为“示例性”所说明的任何实施例不必解释为优于或好于其它实施例。

另外,为了更好的说明本公开,在下文的具体实施方式中给出了众多的具体细节。本领域技术人员应当理解,没有某些具体细节,本公开同样可以实施。在一些实例中,对于本领域技术人员熟知的方法、手段、元件和电路未作详细描述,以便于凸显本公开的主旨。

请参阅图2a,图2a示出了根据本公开一实施例的通信系统的框图。

如图2a所示,所述系统包括第一组件10、第二组件20及至少一个第三组件30,所述第一组件10与所述第二组件20之间通过第一串行外设接口SPI线路通信,所述第一组件10与所述至少一个第三组件30之间通过至少一个第二SPI线路通信,其中,

所述第二组件20用于发送SPI通信信息,所述SPI通信信息用于对所述第二组件20及所述第三组件30写入数据或仅对所述第三组件30读数据或写数据;

所述第一组件10用于:接收所述第二组件20发送的SPI通信信息,在所述SPI通信信息中包括跨芯片通信开始指示的情况下,建立所述第一SPI线路与所述第二SPI线路的连接关系,以使得所述第二组件20建立与所述第一组件10及所述第三组件30的直接SPI连接;

所述第三组件30用于:通过所述第二SPI线路直接接收所述第二组件20发送的SPI通信信息,在所述SPI通信息中包括读数据指令的情况下,发送目标数据。

本公开实施例可以根据第二组件20的SPI通信信息包含的跨芯片通信开始指示,将第二组件20从第一SPI线路切换到第二SPI线路,使得第二组件20与第一组件10、第三组件30均直接连接,这样,当第二组件20向第一组件10、第三组件30同时发送SPI通信信息时,第三组件30可以与第一组件10同步收到第二组件20发送的相同的SPI通信信息,达到广播的目的,并且,当第二组件20要读取第三组件30的数据时,第二组件20可以更快速地将读取指令发送到第三组件30,第三组件30也可更快响应读取指令返回数据到第二组件20,本公开实施例的通信系统,相较于相关技术,节约了通信时间,具有高效性,且操作简便,成本较低。

通过以上系统,本公开实施例可以实现第二组件20对第一组件10及第三组件30的同时写数据,即第一模式,在该第一模式下,第二组件20写入第一组件10及第三组件30的数据相同;另外,第二组件20也可以仅对第三组件30进行读写数据,即第二模式,在该第二模式下,第二组件20不对第一组件10读写数据,第一组件10对该模式下的数据(仅对第三组件30读写的数据)不可见。在一个示例中,可以在SPI通信信息中设置模式指示标志位(例如1代表第一模式,0代表第二模式),以区分两种模式,对此,本公开实施例不做限定,在第二模式下,第一组件10与第二组件20之间的通信可以被切断,例如,第一组件通过第一SPI线路发送芯片通信指示到第二组件后,第二组件建立所述第一SPI线路与所述第二SPI线路的连接关系,切断第一组件10与第二组件20之间的通信,第一组件10仅作为传递SPI通信信息的节点,使得第二组件通过SPI通信直接对第三组件进行写操作或读操作,第三组件在通过SPI通信接收到第二组件的读数据指令的情况下,直接发送目标数据到第二组件。

本公开实施例对利用SPI进行通信的具体实现方式不做限定,本领域技术人员可以根据相关技术实现,本公开实施例对SPI通信协议的具体实现不做限定,本公开提到的SPI通信可以是基于四线SPI(例如包括时钟信号线CLK、片选线CS、主输入从输出MISO、主输出从输入MOSI),也可以包括三线SPI(例如时钟信号线CLK、片选线CS、主输入从输出MISO或主输出从输入MOSI,其中,数据线可以为MISO也可以为MOSI),当然,三线SPI还可以包括时钟信号线CLK、主输入从输出MISO、主输出从输入MOSI。

当然,以上对SPI信号线的描述是示例性的,在其他的实施例中,本领域技术人员可以根据需要设置。

在一个示例中,SPI通信信息可以包括SPI时钟信号CLK、SPI片选信号CS及SPI数据MOSI。

应该说明的是,本公开实施例对第一组件10、第二组件20、第三组件30的具体实现方式不做限定,第一组件10可以称为上位机,第二组件20及多个第三组件30是主从关系,其中,第二组件20可以为主机,第三组件30可以为从机。

在一个示例中,组件包括但不限于单独的处理器,或者分立元器件,或者处理器与分立元器件的组合。所述处理器可以包括电子设备中具有执行指令功能的控制器,所述处理器可以按任何适当的方式实现,例如,被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现。在所述处理器内部,可以通过逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器等硬件电路执行所述可执行指令。在一个示例中,组件也可以为终端或服务器,其中,终端又称之为用户设备(User Equipment,UE)、移动台(MobileStation,MS)、移动终端(Mobile Terminal,MT)等,是一种向用户提供语音和/或数据连通性的设备,例如,具有无线连接功能的手持式设备、车载设备等。目前,一些终端的举例为:手机(Mobile Phone)、平板电脑、笔记本电脑、掌上电脑、移动互联网设备(MobileInternetdevice,MID)、可穿戴设备,虚拟现实(Virtual Reality,VR)设备、增强现实(Augmentedreality,AR)设备、工业控制(Industrial Control)中的无线终端、无人驾驶(Selfdriving)中的无线终端、远程手术(Remote medical Surgery)中的无线终端、智能电网(Smart Grid)中的无线终端、运输安全(Transportation Safety)中的无线终端、智慧城市(Smart City)中的无线终端、智慧家庭(Smart Home)中的无线终端、车联网中的无线终端等。

在一个示例中,第一组件10、第二组件20、第三组件30均配置为支持SPI通信,其中,第二组件20作为主机,可设置多个SPI单元,以与第一组件10及多个第三组件30分别对应,示例性的,第一组件10与第二组件20之间的第一SPI线路可以对应第一SPI单元,第二组件20与第三组件30之间的第二SPI线路可以对应第二SPI单元。

本公开实施例对利用SPI进行通信的具体实现方式不做限定,本领域技术人员可以根据相关技术实现。

在一个示例中,可以提前在SPI通信协议中约定跨芯片通信开始指示的形式,并约定当第二组件20接收到跨芯片通信开始指示时,建立所述第一SPI线路与所述第二SPI线路的连接关系,以建立第一组件10、各个第三组件30及第二组件20的直接连接。

当然,本公开实施例对具体的协议实现不做限定,本领域技术人员可以根据需要及实际情况实现。

请参阅图2b,图2b示出了根据本公开一实施例的通信系统的框图。

在一种可能的实施方式中,如图2b所示,所述第一组件10中可以包括线路切换开关130,在所述SPI通信信息中包括跨芯片通信开始指示的情况下,建立所述第一SPI线路与所述第二SPI线路的连接关系,包括:

在所述SPI通信信息中包括跨芯片通信开始指示的情况下,通过所述线路切换开关130建立所述第一SPI线路与所述第二SPI线路的连接关系。

在一个示例中,如图2b所示,第一组件10中包括第一SPI单元110、第二SPI单元120,第二组件20包括第三SPI单元210,第三组件30包括第四SPI单元310,第一SPI单元110与第三SPI单元210建立SPI连接形成第一SPI线路,第二SPI单元与第四SPI单元建立SPI连接形成第二SPI线路。

在一个示例中,接收到跨芯片通信开始指示时,线路切换开关130被使能,以将第一SPI线路、第二SPI线路的对应端口(如CLK/CS/MISO)连接。

在一种可能的实施方式中,当所述第一SPI线路及所述第二SPI建立连接时,所述第一组件10还可以用于:

在接收的SPI通信信息中包括跨芯片通信停止指示的情况下,断开所述第一SPI线路与所述第二SPI线路的连接关系。

在一个示例中,当第二组件20不需进行广播通信或不需读取第三组件30的数据或其他情况时,第二组件20可以通过SPI发送跨芯片通信停止指示到第一组件10,当第一组件10接收到跨芯片通信停止指示的情况下,断开所述第一SPI线路与所述第二SPI线路的连接关系,以断开所述第二组件20与所述第三组件30的直接SPI连接,从而使得广播通信系统退出统一操作模式,在这种情况下,第一组件10与第二组件20可以通过第一SPI线路直接进行SPI通信,第一组件10与第三组件30之间可以通过第二SPI线路直接进行SPI通信,但是,第二组件20与第三组件30之间无法进行直接的SPI通信。

在一个示例中,可以提前在SPI通信协议中约定跨芯片通信停止指示的形式,并约定当第二组件20接收到跨芯片通信停止指示时,断开所述第一SPI线路与所述第二SPI线路的连接关系,以断开第一组件10与各个第三组件30的直接连接。

当然,本公开实施例对具体的协议实现不做限定,本领域技术人员可以根据需要及实际情况实现。

在一种可能的实施方式中,所述第一组件10还可以用于:

在接收的SPI通信信息中包括跨芯片通信停止指示的情况下,通过所述线路切换开关130将所述第二组件20切换到所述第一SPI线路。

在一个示例中,当接收到跨芯片通信停止指示的情况下,线路切换开关130被使能,以断开所述第一SPI线路与所述第二SPI线路的连接关系。

当然,图2b及上述描述示出了线路切换开关130的一种示例,在其他的示例中,线路切换开关130也可以设置为当系统工作在第二模式时,切断第二SPI单元120的工作,例如,可以将第二SPI单元120与第一SPI单元110的连接PAD通过线路切换开关130直接连接到第三SPI单元210,使得第二SPI单元120并不接收第一SPI单元的信息,第一SPI单元110将SPI通信信息通过第二SPI单元120的连接PAD直接通过第三SPI单元210发送到第四SPI单元310。

本公开实施例对切换开关的具体类型不做限定,本领域技术人员可以根据需要及实际情况选择,在一个示例中,切换开关可以基于金属-氧化物半导体场效应晶体管(Metal-Oxide-Semiconductor Field-Effect Transistor,MOSFET)、绝缘栅双极型晶体管(Insulated Gate Bipolar Transistor,IGBT)等开关管实现。

下面对第二组件20同时发送相同数据到第一组件10及第三组件30的实现方式进行示例性介绍。

请参阅图3,图3示出了根据本公开一实施例的写数据传输的示意图。

在一个示例中,当第二组件20需要进行广播通信时,第二组件20可以通过SPI发送跨芯片通信开始指示到第一组件10,以使得第二组件20建立所述第一SPI线路与所述第二SPI线路的连接关系,广播通信系统由此进入统一操作模式,在所述统一操作模式,第二组件20可以对第一组件10、各个第三组件30进行写操作,即发送相同的SPI通信信息。

在一个示例中,如图3所示,在统一操作模式下,第二组件20发出的SPI通信信息(A)包括片选信号CS、时钟信号CLK、SPI广播数据MOSI,示例性的SPI广播数据MOSI为01101100,由于第一组件10及第二组件20、第三组件30直接连接,因此,第二组件20发出的SPI通信信息可以被第一组件10、第三组件30接收,其中,第一组件10收到的SPI通信信息(B)与SPI通信信息(A)存在延迟,延迟时间为第一组件10到第二组件20的传输延迟时间;第三组件30收到的SPI通信信息(C)与SPI通信信息(A)存在延迟,延迟时间为第一组件10到第三组件30的传输延迟时间.

在一个示例中,因为第二组件20写入第一组件10、第三组件30的数据相同,第一组件10与第二组件20和第一组件10与第三组件30都是同样的SPI通信协议;所以将第一组件10与第二组件20通信的SPI信号,直接连接到第一组件10与第三组件30的SPI通信端口(切断第一组件10与第二组件20的第一SPI通信线路),第二组件20的SPI信号就送给了第一组件10和第三组件30,第一组件10和第三组件30均能收到同样的第二组件20发送的SPI信号和数据,一次SPI写通信完成了对至少2个下位机级联芯片(第一组件10和至少一个第三组件30)的相同数据的写操作。第三组件30接收到的SPI信号比第一组件10接收到的SPI信号要延迟几十ns,因为第三组件30接收到的SPI信号多穿过2级连接端PAD(穿出第一组件10的PAD输出,穿入第三组件30的PAD输入)。但是由于SPI信号中的时钟信号CLK和数据信号MOSI均会有同样的延迟,不影响第三组件30接收到正确的数据。

请参阅表1,表1示出了利用相关技术传输数据及利用本公开实施例传输数据的耗时示意。

表1

从表1可见,本公开实施例相较于相关技术,在对从机写数据时,时间大幅缩短。

通过以上系统,本公开实施例可以实现第二组件与第一组件及各个第三组件的即时广播通信,第二组件可以快速写入相同数据到第一组件及第三组件,且操作简单,成本较低。

下面对第二组件20读取第三组件30的数据的实现方式进行示例性介绍。

在一种可能的实施方式中,所述第三组件发送所述目标数据相较于所述第二组件接收所述目标数据提前N/2个时钟周期,其中,N为整数。

在一个示例中,当第二组件20需要读取任意一个第三组件30的数据时,第二组件20可以通过SPI发送跨芯片通信开始指示到第一组件10,以使得第二组件20建立所述第一SPI线路与所述第二SPI线路的连接关系,通信系统由此进入统一操作模式,在所述统一操作模式,第二组件20可以同快速读取各个第三组件30中的数据。

请参阅图4,图4示出了根据本公开一实施例的读数据传输的示意图。

在一种可能的实施方式中,如图4所示,所述SPI通信信息可以包括SPI时钟信号及片选信号,所述第三组件30还可以用于:

在接收到所述片选信号时,发送所述目标数据的第一个比特,从所述SPI时钟信号的第一个下降沿开始,在所述SPI的时钟信号的下降沿发送所述目标数据其余数据位。

在一种可能的实施方式中,所述第二组件20还用于:

在发送所述SPI通信信息的时钟信号后的第一个上升沿开始接收所述目标数据,

其中,所述SPI时钟信号的半周期时长大于或等于所述SPI通信信息的下行信号延迟时间、所述目标数据上行延迟时间及所述第二组件20获取所述目标数据时的采样建立时间之和。

由于第一SPI线路与第二SPI线路连接,在这种情况下,第二组件20的SPI通信信息可以同时发送到第一组件10及第三组件30,第三组件30的数据也可以发送到第二组件20及第一组件10,相较于相关技术中的两级传输(第二组件20及第三组件30的数据均由第一组件10缓存后发送),提升了第二组件20与第三组件30之间的通信速度。

在一个示例中,如图4所示,所述SPI通信信息的下行信号延迟时间包括第二组件20发送的SPI通信信息(CS-A、CLK-A、MISO-A等)发送到第一组件10的延时(第三SPI单元210到第一SPI单元110的延时)、第一组件10的SPI单元之间的延时(第一SPI单元110到第二SPI单元120之间的延时)及第一组件20到第三组件30的延时(第二SPI单元120到第四SPI单元310的延时),所述目标数据上行延迟时间包括第三组件30到第一组件10的延迟(第四SPI单元310到第二SPI单元120的延时)、第一组件10的SPI单元之间的延时(第二SPI单元120到第一SPI单元110之间的延时)及第一组件10到第二组件20之间的延时(第一SPI单元120到第三SPI单元210的延时)。

在一个示例中,第一组件10的SPI单元之间的延时(第二SPI单元120到第一SPI单元110之间的延时)及所述第二组件20获取所述目标数据时的采样建立时间可以忽略,第二组件20发送的SPI通信信息(CS-A、CLK-A、MISO-A等)发送到第一组件10的延时及第一组件20到第三组件30的延时假设均为50ns,则,在这种情况下,第三组件30发送目标数据需满足T/2>=100ns,即T≥200ns,对应的频率freq≤5MHz。

本公开实施例在满足所述SPI时钟信号的半周期时长大于或等于所述SPI通信信息的下行信号延迟时间、所述目标数据上行延迟时间及所述第二组件20获取所述目标数据时的采样建立时间之和的条件时,如图4所示,第三组件30在接收到所述片选信号(CS-C)时,发送所述目标数据(MISO-C示例性的为10101100)的第一个比特(即最高位bit7=1),从所述SPI时钟信号(CLK-C)的第一个下降沿开始,在所述SPI的时钟信号的下降沿发送所述目标数据其余数据位(bit6~bit0,即0101100),可以使得第二组件20在发送所述SPI通信信息的时钟信号后的第一个上升沿开始接收所述目标数据,如图4所示,第二组件20正确接收到目标数据(MISO-A示例性的为10101100),可见,本公开实施例可以实现第二组件20及第三组件30之间的快速、正确通信。

以上介绍了SPI通信中模式0和模式2对应的方案,相关技术中,模式0和模式2的从机是在下降沿发送数据,而上位机是在上升沿接收数据。

下面对其他的模式进行示例性介绍,例如对于SPI通信中的模式1和模式3,从机是在上升沿发送数据,上位机是在下降沿接收数据。

在一种可能的实施方式中,所述SPI通信信息包括SPI时钟信号及片选信号,

所述第三组件30还用于:从所述SPI时钟信号的第一个上降沿开始,发送所述目标数据;

所述第二组件20还用于:在发送所述SPI通信信息的时钟信号后的第一个下升沿开始接收所述目标数据,

其中,所述第二组件20发出所述SPI通信信息与接收到所述目标数据之间的时间差为二分之一个时钟周期,

其中,所述SPI时钟信号的半周期时长大于或等于所述SPI通信信息的下行信号延迟时间、所述目标数据上行延迟时间及所述第二组件获取所述目标数据时的采样建立时间之和。

应该说明的是,对于SPI通信方式,无论采用哪种模式,只要保证第三组件发送目标数据与第二组件接收目标数据之间具有二分之一个时钟周期的时间差,即,第三组件提前二分之一个时钟周期发送目标数据,上位机就可以正确地读取第三组件发出的数据,并利用本公开实施例的通信系统实现读取速度的提升。

请参阅图5,图5示出了根据本公开一实施例的读数据传输的示意图。

在一种可能的实施方式中,所述SPI通信信息包括SPI时钟信号CLK及片选信号CS,所述第三组件30还可以用于:

在接收到所述片选信号时,发送所述目标数据的第一个比特,从所述SPI时钟信号的第一个上降沿开始,在所述SPI的时钟信号的上降沿发送所述目标数据其余数据位。

在一种可能的实施方式中,所述第二组件20还可以用于:

在发送所述SPI通信信息的时钟信号后的第一个上升沿开始接收所述目标数据,

其中,所述SPI时钟信号的周期时长大于或等于所述SPI通信信息从所述第二组件20到所述第三组件30的下行信号延迟时间、所述目标数据从所述第三组件30到所述第二组件20的上行延迟时间及所述第二组件20获取所述目标数据时的采样建立时间之和。

在一个示例中,第一组件10的SPI单元之间的延时(第二SPI单元120到第一SPI单元110之间的延时)及所述第二组件20获取所述目标数据时的采样建立时间可以忽略,第二组件20发送的SPI通信信息(CS-A、CLK-A、MISO-A等)发送到第一组件10的延时及第一组件20到第三组件30的延时假设均为50ns,则,在这种情况下,第三组件30发送目标数据的延时T≥100ns,第二组件20从发出读取请求到获取目标数据的时间,对应的频率freq≤10MHz,相较于前一种方式提升了通信速率。

本公开实施例在满足所述SPI时钟信号的周期时长大于或等于所述SPI通信信息从所述第二组件20到所述第三组件30的下行信号延迟时间、所述目标数据从所述第三组件30到所述第二组件20的上行延迟时间及所述第二组件20获取所述目标数据时的采样建立时间之和的条件时,如图5所示,当第三组件30在接收到所述片选信号(CS-C)时,发送所述目标数据(MISO-C示例性的为10101100)的第一个比特(即最高位bit7=1),从所述SPI时钟信号(CLK-C)的第一个上降沿开始,在所述SPI的时钟信号的上降沿发送所述目标数据其余数据位(bit6~bit0,即0101100),如图5所示,第二组件20正确接收到目标数据(MISI-A示例性的为10101100)。本公开实施例的第三组件提前二分之一个时钟周期(CLK)发送目标数据(一般而言是在下降沿发送数据),可以减小周期下限,从而提高通信速率的上限,并且,第二组件20可以在发送所述SPI通信信息的时钟信号后的第一个上升沿开始接收所述目标数据,以实现数据的快速、准确接收。

以上介绍了SPI通信中模式0和模式2对应的方案,相关技术中,模式0和模式2的从机是在下降沿发送数据,而上位机是在上升沿接收数据。

下面对其他的模式进行示例性介绍,例如对于SPI通信中的模式1和模式3,从机是在上升沿发送数据,上位机是在下降沿接收数据。

在一种可能的实施方式中,所述SPI通信信息包括SPI时钟信号及片选信号,

所述第三组件还用于:从所述SPI时钟信号的第一个下降沿开始,发送所述目标数据;

所述第二组件还用于:在发送所述SPI通信信息的时钟信号后的第一个下升沿开始接收所述目标数据,

其中,所述第二组件发出所述SPI通信信息与接收到所述目标数据之间的时间差为一个时钟周期,

其中,所述SPI时钟信号的周期时长大于或等于所述SPI通信信息从所述第二组件到所述第三组件的下行信号延迟时间、所述目标数据从所述第三组件到所述第二组件的上行延迟时间及所述第二组件获取所述目标数据时的采样建立时间之和。

应该说明的是,对于SPI通信方式,无论采用哪种模式,只要保证第三组件发送目标数据与第二组件接收目标数据之间具有一个时钟周期的时间差,即,第三组件提前1个时钟周期发送目标数据,上位机就可以正确地读取第三组件发出的数据,并利用本公开实施例的通信系统实现读取速度的提升。

请参阅图6,图6示出了根据本公开一实施例的读数据传输的示意图。

在一种可能的实施方式中,如图6所示,所述SPI通信信息包括SPI时钟信号及片选信号,所述第三组件30还可以用于:

在接收到所述片选信号后,对所述SPI时钟信号计数,从所述SPI时钟信号的第七个时钟周期的上升沿开始,在所述SPI时钟信号的上升沿发送所述目标数据。

在一种可能的实施方式中,如图6所示,所述第一组件10还用于:

对所述第三组件30发送的所述目标数据进行暂存,并在接收到所述目标数据的下一个SPI时钟信号的上升沿发送所述目标数据。

在一个示例中,第一组件10可以设置有寄存器模块,包括多个寄存器,以实现对接收到的目标数据的暂存,当然,本公开实施例对寄存器模块的具体实现方式不做限定。

本公开实施例通过第一组件10对接收的目标数据进行暂存,可以进一步提高SPI通信速率,提升SPI读取操作的速率。

在一种可能的实施方式中,如图6所示,所述第三组件30还用于:

在接收到所述片选信号后,发送冗余数据(DUMMY Byte)的第一个比特,并从所述SPI时钟信号的第一个下降沿或上升沿到第六个下降沿或上升沿发送所述冗余数据的其余位。

应该说明的是,当第一组件接收到所述冗余数据时,会做舍弃处理,即舍弃接收到的第一字节的数据。

在一种可能的实施方式中,如图6所示,所述第二组件20还可以用于:

在发送所述SPI通信信息的时钟信号后的第九个上升沿开始接收所述目标数据,

其中,所述SPI时钟信号的周期时长大于或等于所述SPI通信信息从所述第一组件10到所述第三组件30的下行信号延迟时间、所述目标数据从所述第三组件30到所述第一组件10的上行延迟时间及所述第二组件20获取所述目标数据时的采样建立时间之和,

其中,所述SPI时钟信号的周期时长大于或等于所述SPI通信信息从所述第二组件20到所述第一组件10的下行信号延迟时间、所述目标数据从所述第一组件10到所述第二组件20的上行延迟时间及所述第二组件20获取所述目标数据时的采样建立时间之和。

对于第二组件20而言,第三组件30提前了2个CLK周期(包括在上升沿发送数据而比默认的提前半(0.5)个周期发送数据,及额外提前了1.5个周期发送数据,总共提前了2个周期发送数据)发送数据,第一个Byte(字节)数据无法正确发送,所以第一个Byte数据为DUMMY Byte。第三组件30SPI在第一个Byte第7个(7th)CLK上升沿开始发送第一个有效Byte最高数据bit 7(后续bit依序发送),第一组件10的SPI在第一个Byte第8个(8th)CLK上升沿锁存(DFF)并发出该bit 7(后续bit依序发送),上位机SPI在第二个Byte第1个(1st)CLK上升沿采用该bit 7(后续bit依序接收),数据正确接收。

在一个示例中,第二组件20接收到的第一个字节的数据为冗余数据,第二组件20放弃接收到的第一个字节,并在第二个字节开始的第一个CLK的上升沿(即发送所述SPI通信信息的时钟信号后的第九个上升沿)开始接收有效数据。

在一个示例中,第一组件10的SPI单元之间的延时(第二SPI单元120到第一SPI单元110之间的延时)及所述第二组件20获取所述目标数据时的采样建立时间可以忽略,第二组件20发送的SPI通信信息(CS-A、CLK-A、MISO-A等)发送到第一组件10的延时及第一组件20到第三组件30的延时假设均为50ns,则,在这种情况下,由于本公开实施例通过第一组件10暂存第三组件30传来的目标数据,通过水管式(pipeline)数据传输方式,第三组件30只需满足延时50ns发送目标数据即可,即第三组件以T≥50ns为周期发送目标数据,对应的频率freq≤20MHz,可见,该种方式大幅提升了第三组件30与第二组件20的通信速率。

应该说明的是,本公开各个实施例的附图,为了显示第二组件20在采样MISO-C时有足够的保持时间,并为了表示各个时钟信号之间的延时、各个数据信号MISO之间的延时,本公开实施例在绘制附图时,采用了信号间对齐的方式,数据的发送时间与时钟信号CLK并未严格对齐,这不应视为是对本公开的限制。

本公开实施例通过满足所述SPI时钟信号的周期时长大于或等于所述SPI通信信息从所述第一组件10到所述第三组件30的下行信号延迟时间、所述目标数据从所述第三组件30到所述第一组件10的上行延迟时间及所述第二组件20获取所述目标数据时的采样建立时间之和、所述SPI时钟信号的周期时长大于或等于所述SPI通信信息从所述第二组件20到所述第一组件10的下行信号延迟时间、所述目标数据从所述第一组件10到所述第二组件20的上行延迟时间及所述第二组件20获取所述目标数据时的采样建立时间之和的条件,如图6所示,使得第三组件30在接收到所述片选信号(CS-C)后,发送冗余数据(DUMMY Byte)的第一个比特,并从所述SPI时钟信号(CLK-C)的第一个下降沿或上升沿到第六个下降沿或上升沿发送所述冗余数据的其余位,并且,在接收到所述片选信号后,对所述SPI时钟信号计数,从所述SPI时钟信号的第七个时钟周期的上升沿开始,在所述SPI时钟信号的上升沿发送所述目标数据(MISO-C示例性的为10101100),并使得第一组件10对所述第三组件30发送的所述目标数据(第一组件10接收到的数据MISO-B0)进行暂存,得到暂存的目标数据(MISO-B1),并在接收到所述目标数据的下一个SPI时钟信号的上升沿发送所述目标数据,能够让第二组件20在发送所述SPI通信信息的时钟信号后的第九个上升沿开始接收所述目标数据,如图6所示,第二组件20正确接收到目标数据(MISO-A示例性的为10101100),可见,本公开实施例可以实现系统各个组件的准确、快速通信。

以上介绍了SPI通信中模式0和模式2对应的方案,相关技术中,模式0和模式2的从机是在下降沿发送数据,而上位机是在上升沿接收数据。

下面对其他的模式进行示例性介绍,例如对于SPI通信中的模式1和模式3,从机是在上升沿发送数据,上位机是在下降沿接收数据。

在一种可能的实施方式中,所述SPI通信信息包括SPI时钟信号及片选信号,

所述第三组件还用于:从所述SPI时钟信号的第七个时钟周期的下升沿开始,在所述SPI时钟信号的下升沿发送所述目标数据;

所述第一组件还用于:对所述第三组件发送的所述目标数据进行暂存,并在接收到所述目标数据的下一个SPI时钟信号的上升沿发送所述目标数据;

所述第二组件还用于:在发送所述SPI通信信息的时钟信号后的第九个下升沿开始接收所述目标数据,

其中,所述第二组件发出所述SPI通信信息与接收到所述目标数据之间的时间差为两个时钟周期,

其中,所述SPI时钟信号的周期时长大于或等于所述SPI通信信息从所述第一组件到所述第三组件的下行信号延迟时间、所述目标数据从所述第三组件到所述第一组件的上行延迟时间及所述第二组件获取所述目标数据时的采样建立时间之和,

其中,所述SPI时钟信号的周期时长大于或等于所述SPI通信信息从所述第二组件到所述第一组件的下行信号延迟时间、所述目标数据从所述第一组件到所述第二组件的上行延迟时间及所述第二组件获取所述目标数据时的采样建立时间之和。

在一种可能的实施方式中,所述第三组件还用于:

在接收到所述片选信号后,发送冗余数据的第一个比特,并从所述SPI时钟信号的第一个下降沿或上升沿到第六个下降沿或上升沿发送所述冗余数据的其余位。

应该说明的是,对于SPI通信方式,无论采用哪种模式,只要保证第三组件发送目标数据与第二组件接收目标数据之间具有两个时钟周期的时间差,即,第三组件提前2个时钟周期发送目标数据,上位机就可以正确地读取第三组件发出的数据,并利用本公开实施例的通信系统实现读取速度的提升。

请参阅表2,表2示出了利用相关技术读取数据及利用本公开实施例读取数据的耗时示意。

表2

如表2所示,当采用图6对应的方案时,本公开实施例的第二组件20读取第三组件30的数据的时间远小于利用相关技术读取数据的时间。

本公开实施例可以根据第二组件20的SPI通信信息包含的跨芯片通信开始指示,将第二组件20从第一SPI线路切换到第二SPI线路,使得第二组件20与第一组件10、第三组件30均直接连接,这样,当第二组件20向第一组件10、第三组件30同时发送SPI通信信息时,第三组件30可以与第一组件10同步收到第二组件20发送的相同的SPI通信信息,达到广播的目的,并且,当第二组件20要读取第三组件30的数据时,第二组件20可以更快速地将读取指令发送到第三组件30,第三组件30也可更快响应读取指令返回数据到第二组件20,本公开实施例的通信系统,相较于相关技术,节约了通信时间,具有高效性,且操作简便,成本较低。

以上已经描述了本公开的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。

25页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种高速串行扩展接口

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!