CN118132475A - 串行通信方法、系统、设备及介质 - Google Patents
串行通信方法、系统、设备及介质 Download PDFInfo
- Publication number
- CN118132475A CN118132475A CN202410252006.1A CN202410252006A CN118132475A CN 118132475 A CN118132475 A CN 118132475A CN 202410252006 A CN202410252006 A CN 202410252006A CN 118132475 A CN118132475 A CN 118132475A
- Authority
- CN
- China
- Prior art keywords
- slave device
- field
- address
- data
- address field
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000004891 communication Methods 0.000 title claims abstract description 54
- 238000000034 method Methods 0.000 title claims abstract description 47
- 230000004044 response Effects 0.000 claims description 53
- 238000010586 diagram Methods 0.000 description 16
- 101150002258 HDR1 gene Proteins 0.000 description 6
- 230000002093 peripheral effect Effects 0.000 description 5
- 230000009471 action Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000003190 augmentative effect Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 230000000737 periodic effect Effects 0.000 description 2
- 230000000750 progressive effect Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 102100033270 Cyclin-dependent kinase inhibitor 1 Human genes 0.000 description 1
- 101000944380 Homo sapiens Cyclin-dependent kinase inhibitor 1 Proteins 0.000 description 1
- 101000631899 Homo sapiens Ribosome maturation protein SBDS Proteins 0.000 description 1
- 102100028750 Ribosome maturation protein SBDS Human genes 0.000 description 1
- 101100528972 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) RPD3 gene Proteins 0.000 description 1
- 230000003213 activating effect Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Landscapes
- Small-Scale Networks (AREA)
Abstract
本申请应用于通信领域,提供了一种串行通信方法、系统、设备及介质,串行通信系统包括主控装置、第一从属装置和第二从属装置,主控装置连接第一从属装置,第一从属装置连接第二从属装置,其中方法包括:主控装置依次向第一从属装置发送第一地址字段、第一数据字段、第二地址字段、第二数据字段,第二地址字段包括第二从属装置中的存储地址和位置标识信息,位置标识信息包括终止位置标识或者非终止位置标识,可通过位置标识信息识别当前从属装置的位置。这样,主控装置无需生成和发送标头字段,节省主控装置生成标头字段的时间。而且也不会限制可连接从属装置的数量,使得主控装置可以连接的从属装置数量更多。
Description
技术领域
本发明涉及通信领域,尤其涉及一种串行通信方法、系统、设备及介质。
背景技术
在串行通信系统中,主控装置和多个从属装置之间可以采用菊花链级联,进而节省主控装置的接口数量。即主控装置连接一个从属装置,一个从属装置连接另一个从属装置,只有相邻装置之间能直接通信。
目前主控装置采用菊花链协议发送数据的结构为:标头字段、各个从属装置的地址字段以及主控装置向各个从属装置发送的数据字段。并且,主控装置会在标头字段中携带连接的从属装置的数量。
然而,标头字段中用于表示从属装置的数量的字节位数有限,导致主控装置能连接的从属装置也有限。如果主控装置连接超出标头字段能表示的数量的从属装置,这些从属装置在数据传输中将无法有效读取到自身该获取的数据。
发明内容
本申请提供了一种串行通信方法、系统、设备及介质。
第一方面,提供了一种串行通信方法,应用于串行通信系统,串行通信系统包括主控装置、第一从属装置和第二从属装置,主控装置的输出端连接第一从属装置的输入端,第一从属装置的输出端连接第二从属装置的输入端,其中方法包括:主控装置依次向第一从属装置发送第一地址字段、第一数据字段、第二地址字段、第二数据字段,其中,第一地址字段包括第一从属装置中的存储地址、位置标识信息以及读写标志位,第一地址字段的位置标识信息包括非终止位置标识,读写标志位用于指示进行读操作或者写操作,其中,当第一地址字段的读写标志位为写操作,第一数据字段用于指示第一从属装置向第一地址字段对应的存储地址写入的数据,第二地址字段包括第二从属装置中的存储地址、位置标识信息以及读写标志位,第二地址字段的位置标识信息包括终止位置标识或者非终止位置标识,当第二地址字段的读写标志位为写操作,第二数据字段用于指示第二从属装置向第二地址字段对应的存储地址写入的数据。
其中,若第一地址字段的读写标志位为读操作,则第一数据字段无实际意义;若第二地址字段的读写标志位为读操作,则第二数据字段无实际意义。
进而,主控装置无需生成和发送标头字段,直接按从属装置连接顺序发送对应地址段和对应数据段,节省主控装置生成标头字段的时间。而且也不会因为需要在标头字段中指定从属装置的数量,而限制可连接从属装置的数量,使得主控装置可以连接的从属装置数量更多。
结合第一方面,在一些实现方式中,该方法还包括:主控装置将片选信号置为有效状态;主控装置向第一从属装置和第二从属装置发送片选信号;主控装置向第一从属装置和第二从属装置发送时钟信号。
结合第一方面,在一些实现方式中,该方法还包括:第一从属装置依次向第二从属装置发送第一状态字段、第一响应字段、第二地址字段、第二数据字段,其中,第一状态字段包括第一从属装置向主控装置发送的第一从属装置的状态信息,第一响应字段包括第一地址字段中存储地址对应的数据。
结合第一方面,在一些实现方式中,该方法还包括:基于第二地址字段包括终止位置标识,第二从属装置向主控装置发送第一状态字段、第一响应字段、第二状态字段、第二响应字段,其中,第二从属装置的输出端连接主控装置的输入端,第二状态字段包括第二从属装置向主控装置发送的第二从属装置的状态信息,第二响应字段包括第二地址字段中存储地址对应的数据。
结合第一方面,在一些实现方式中,该方法还包括:基于第二地址字段包括非终止位置标识,第二从属装置向第三从属装置发送第一状态字段、第一响应字段、第二状态字段、第二响应字段;其中,第二从属装置的输出端连接第三从属装置的输入端,第二状态字段包括第二从属装置向主控装置发送的第二从属装置的状态信息,第二响应字段包括对应于第二地址字段中存储地址对应的数据。
结合第一方面,在一些实现方式中,该方法还包括:基于第一从属装置接收到第二地址字段和第二数据字段且片选信号为有效状态,第一从属装置产生第一使能信号,第一使能信号用于指示第一从属装置开始根据第一地址字段和第一数据字段进行对应的写入操作;基于第二从属装置接收到第二地址字段和第二数据字段且片选信号为有效状态,第二从属装置产生第二使能信号,第二使能信号用于指示第二从属装置开始根据第二地址字段和第二数据字段进行对应的写入操作。
结合第一方面,在一些实现方式中,第一状态字段包括第一从属装置向主控装置发送的芯片告警信息;第二状态字段包括第二从属装置向主控装置发送的芯片告警信息。
第二方面,本申请提供了一种串行通信系统,串行通信系统包括主控装置、第一从属装置和第二从属装置,主控装置的输出端连接第一从属装置的输入端,第一从属装置的输出端连接第二从属装置的输入端,主控装置用于依次向第一从属装置发送第一地址字段、第一数据字段、第二地址字段、第二数据字段,其中,第一地址字段包括第一从属装置中的存储地址、位置标识信息以及读写标志位,第一地址字段的位置标识信息包括非终止位置标识,读写标志位用于指示进行读操作或者写操作,其中,当第一地址字段的读写标志位为写操作,第一数据字段用于指示第一从属装置向第一地址字段对应的存储地址写入的数据,第二地址字段包括第二从属装置中的存储地址、位置标识信息以及读写标志位,第二地址字段的位置标识信息包括终止位置标识或者非终止位置标识,当第二地址字段的读写标志位为写操作,第二数据字段用于指示第二从属装置向第二地址字段对应的存储地址写入的数据。
第三方面,本申请提供了一种电子设备,包括处理器和存储器,存储器用于存储指令,处理器用于执行指令,当处理器执行该指令时,执行如第一方面所描述的方法。
第四方面,本申请提供一种计算机可读存储介质,计算机可读存储介质中存储有指令,当指令在电子设备上运行时,执行如第一方面所描述的方法。
第五方面,本申请提供了一种计算机程序产品,计算机程序产品包括计算机指令,在被计算设备执行时,计算设备执行如第一方面所描述的方法。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍。
图1是本申请实施例提供的一种主控装置连接一个从属装置的结构示意图;
图2是本申请实施例提供的一种主控装置连接多个从属装置的结构示意图;
图3是本申请实施例提供的一种标头字段的结构示意图;
图4是本申请实施例提供的一种菊花链协议通信中信号的结构示意图;
图5是本申请实施例提供的一种多从属装置的通信信号结构示意图;
图6是本申请实施例提供的一种主控装置和多个从属装置通信时各个信号的结构示意图;
图7是本申请实施例提供的一种串行通信方法的流程示意图;
图8是本申请实施例提供的一种第一地址字段的结构示意图;
图9是本申请实施例提供的一种第一数据字段的结构示意图;
图10是本申请实施例提供的一种第二地址字段的结构示意图;
图11是本申请实施例提供的另一种串行通信方法的流程示意图;
图12是本申请实施例提供的一种一个从属装置的情况下通信信号的结构示意图;
图13是本申请实施例提供的另一种一个从属装置的情况下通信信号的结构示意图;
图14是本申请实施例提供的一种多个从属装置的情况下通信信号的结构示意图;
图15是本申请实施例提供的另一种多个从属装置的情况下通信信号的结构示意图;
图16A-图16B是本申请实施例提供的一种串行通信装置的结构示意图;
图17是本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
本申请的说明性实施例包括但不限于一种串行通信方法、系统、设备及介质。
下面先介绍本申请涉及的串行通信系统。
如图1所示,串行通信系统包括主控装置110和从属装置120。主控装置和从属装置之间通过串行外围接口(serial peripheral interface,SPI)连接。SPI总线包括输出数据线(serial data output,SDO)以及输入数据线(serial data input,SDI),时钟端(serialclock,SCLK)和一个或多个片选端(chip select n,CSN)。
SDO以及SDI均为单向数据线。SDO可用于主控/从属装置发送数据,SDI可用于主控/从属装置接收数据。由主控装置数据线(master output/slave input,MOSI)。由从SPI装置向主SPI装置发送数据的数据线也可被称为主输入从输出数据线(master input/slave output,MISO)。
SCLK用于由主控装置产生时钟信号,可用于向主控装置与从属装置进行时钟同步。在图1中,主控装置的SCLK也可称为主控装置SCLK(master SCLK,MSCLK)。
CSN用于传输片选信号,片选信号可包括有效状态和非有效状态,例如低电平(如电位为0)时为有效状态,高电平(如电位为1)时为非有效状态。当主控装置驱动片选信号处于有效状态时,该片选信号可用于使能从属装置。在图1中,主控装置的CSN也可称为主控装置CSN(master SCSN,MCSN),从属装置的CSN也可称为从属装置CSN(slave SCSN,SCSN)。
如图2所示,一个主控装置110还可以连接多个从属装置120(例如,从属装置1、从属装置2、从属装置3…从属装置n)。主控装置110和多个从属装置120之间采用菊花链级联,即以主控装置110为首,主控装置110与从属装置120之间依次采用SDO连接SDI,形成串联形式,其中只有相邻装置之间能直接通信。
具体包括,主控装置110和多个从属装置120共用一套时钟信号和片选信号,即主控装置110的MSCLK连接每个从属装置120的SCLK,主控装置110的MCSN连接每个从属装置120的SCSN。主控装置110和从属装置120采用输出连接输入的方式首尾级联,即主控装置110的MOSI连接从属装置1的SDI1,从属装置1的SDO1连接从属装置2的SDI2,以此类推,最后从属装置n的SDOn连接主控装置的MISO。
下面介绍一些示例中串行通信系统中菊花链协议的帧结构。
在一些示例中,菊花链协议的帧结构包括:标头字段、各个从属装置的地址字段以及主控装置向各个从属装置发送的数据字段。
标头字段中包括连接到主控装置的从属装置数量。图3示出了一种标头字段(header,HDR)1的格式,该HDR1包含标头标识值和从属装置计数值。从属装置可以通过识别标头标识值确认该字段为标头字段,图3中以标头标识值为“10”进行举例说明。从属装置计数值用于表示主控装置连接的从属装置数量。
各个从属装置的地址字段是按从属装置连接顺序倒叙发送,然后是主控装置向各个从属装置发送的数据字段,并也按从属装置连接顺序倒叙发送。进而,从属装置可以通过标头字段中从属装置数量,确定数据字段中对应当前从属装置的地址字段以及数据字段所在的位置。
下面以主控装置110通过菊花链连接3个从属装置(从属装置1至从属装置3)进行举例说明。如图4所示,主控装置110先将CSN401置低,且向从属装置1至从属装置3发送时钟信号402。主控装置110向从属装置1发送数据信号403,其中,数据信号403包括标头字段HDR1和HDR2,从属装置1至从属装置3中的地址字段A1至A3,以及向从属装置1至从属装置3发送的数据字段D1至D3。并且,地址字段A1至A3和数据字段D1至D3是按从属装置连接顺序倒序排列的,对应在图4中数据信号403中为HDR1、HDR2、A3、A2、A1、D3、D2、D1。
从属装置1接收到数据信号403之后,通过HDR1中标头标识值可以确定HDR1为标头字段,进而可以读取到HDR1中从属装置计数值为3。然后可以确定数据信号403中除标头字段外第三个字段为从属装置1中的地址字段A1,第六个字段为需要读取的数据字段D1。进而从属装置1读取地址字段A1指示的地址中的数据,或者向地址字段A1指示的地址写入数据。从属装置1还会生成对应数据字段D1对应的响应字段R1以及状态字段S1,形成数据信号404,数据信号404中字段顺序为S1、HDR1、HDR2、A3、A2、R1、D3、D2。以此类推,从属装置2向从属装置3发送数据信号405,最后从属装置3向主控装置110发送的数据信号406,数据信号406中各个从属装置的状态字段S1至S3和响应字段R1至R3也是倒序排列的。
也即是说,目前菊花链协议的数据格式中需要标头字段,并在标头字段中指定从属装置的连接数量,才能让从属装置知道除标头字段后面的哪些字段是地址字段,哪些字段是数据字段。但是标头字段中用于表示从属装置数量的字节有限,例如图3中从属装置计数值为5比特,进而使用该菊花链协议的主控装置最多能连接32个从属装置。
这样,由于菊花链协议帧结构中标头字段的字节数量有限,使得主控装置能连接的从属装置也有限。如果主控装置连接超出标头字段能表示的数量的从属装置,这些从属装置在数据传输中将无法有效读取到自身该获取的数据。
为了解决菊花链协议中标头字段需要指定从属装置数量,而导致主控装置连接从属装置数量有限的问题,本申请提供了一种串行通信方法,该通信方法应用于上述如图2所示的串行通信系统,该系统中包括主控装置和多个从属装置。主控装置依次生成并发送各个从属装置的地址字段以及数据字段,每个地址字段存在标识值,当主控装置生成并发送最后一个从属装置的地址字段时,该最后一个从属装置的地址字段中的标识值为终止位置标识。
具体地,串行通信系统包括主控装置、第一从属装置和第二从属装置,主控装置的输出端连接第一从属装置的输入端,第一从属装置的输出端连接第二从属装置的输入端,如图5所示,主控装置依次向第一从属装置发送第一地址字段、第一数据字段、第二地址字段、第二数据字段。
其中,第一地址字段包括第一从属装置中的存储地址、非终止位置标识和读写标志位,当读写标志位为写操作时,第一数据字段包括主控装置向第一从属装置发送的需要写入数据,当读写标志位为读操作时,第一数据字段通常不携带有用信息。
第二地址字段包括第二从属装置的存储地址,还包括位置标识信息,具体包括终止位置标识或者非终止位置标识,第二数据字段包括主控装置向第二从属装置发送的数据。其中,非终止位置标识用于指示该地址字段对应的从属装置不是最后一个从属装置,终止位置标识用于指示该地址字段对应从属装置是最后一个从属装置。
也即是说,主控装置在发送数据时,无需先发送标头字段,直接按从属装置连接顺序,依次发送从属装置的地址字段和需要从属装置获取的数据字段,即地址字段和数据字段是交替排列的,从而从属装置可以直接确定地址字段的下一个字段为对应的数据字段。并在对应最后一个从属装置的地址字段中加入终止位置标识,以使从属装置确定当前为发送给最后一个从属装置的数据。
这样,主控装置无需生成和发送标头字段,直接按从属装置连接顺序发送对应地址段和对应数据段,节省主控装置生成标头字段的时间。而且也不会因为需要在标头字段中指定从属装置的数量,而限制可连接从属装置的数量,使得主控装置可以连接的从属装置数量更多。
在一些实施例中,该方法还包括第一从属装置根据第一地址字段输出第一地址字段对应地址的数据,或者根据第一数据字段在第一地址字段对应地址中写入数据。同样地,该方法还包括第二从属装置根据第二地址字段输出第二地址字段对应地址的数据,或者根据第二数据字段在第二地址字段对应地址写入数据。
在一些实施例中,如图6所示,该方法还包括主控装置激活片选信号CSN601以及发送时钟信号SCLK602。
在另一些实施例中,第一从属装置接收到主控装置的信号603之后,如图6中信号604所示,第一从属装置还会向第二从属装置依次生成并发送第一状态字段、第一响应字段,并转发第二地址字段、第二数据字段。第一状态字段包括第一从属装置向主控装置发送的数据,第一响应字段包括第一从属装置读取的第一地址字段的数据。
在另一些实施例中,该方法还包括第二从属装置生成并发送第一状态字段、第一响应字段、第二状态字段、第二响应字段,如图6中信号605所示。第二状态字段包括第二从属装置向主控装置发送的数据等,第二响应字段包括第二从属装置读取的第二地址字段的数据。
应理解,状态字段的内容可由从属装置自行定义,可以是从属装置需要向主控装置发送的数据,例如从属装置的状态信息。例如,第一状态字段可以包括第一从属装置的状态信息,第二状态字段可以包括第二从属装置的状态信息等。
也即是说,下一个从属装置将先接收到前面从属装置的状态字段和响应字段,然后接收到的第一个地址字段和第一个数据字段即为自身需要进行获取并处理的字段内容,从属装置将自身对应的地址字段替换为状态字段,以及将对应的数据字段替换为了响应字段,最后将后面的地址字段和数据字段直接转发给再下一个从属装置。
而在其他一些示例中,主控装置是先按从属装置顺序先发送各个从属装置的地址字段,再按从属装置顺序发送各个从属装置的数据字段,而从属装置接收到数据后,会先发送自身的状态字段,在转发其他从属装置的状态字段或地址字段,以及会先发送自身的响应字段,在转发其他从属装置的响应字段和数据字段。
这样,从属装置需要将其他字段向后移一个字段,最后主控装置接收到最后一个从属装置发送的数据时,其状态信息和响应信息也是倒序的,进而发送数据和接收到回复中字段不能对应,主控装置还需要对收到的回复中各字段与从属装置的关系进行对应,耗费较多时间。
综上所述,主控装置无需生成和发送标头字段,节省了主控装置生成标头字段的时间。而且也不会因为需要在标头字段中指定从属装置的数量,而限制可连接从属装置的数量。并且,也不会存在从属装置需要重新组合生成其他从属装置的字段信息的情况,主控装置发送的数据和接收到的回复的顺序是对应的,无需等待最后一个从属装置处理完成后,最后一个从属装置才会按倒序发送各个从属装置的状态信息和响应信息。
上述主控装置和从属装置可以是任意具备通信功能的电子设备,例如手机、平板电脑、可穿戴设备、车载设备、增强现实(augmented reality,AR)/虚拟现实(virtualreality,VR)设备、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本、个人数字助理(personal digital assistant,PDA)或专门的照相机(例如单反相机、卡片式相机)等。或者,上述主控装置和从属装置还可以是上述电子设备的网络控制器,本申请对此不作任何限制。
下面结合图7介绍本申请提供的串行通信方法的步骤。该方法应用于上述串行通信系统,该系统中包括主控装置和多个从属装置,主控装置和多个从属装置采用菊花链连接,具体可参考前述图1和图2及其相关描述。下面以从属装置包括第一从属装置和第二从属装置为例进行说明。
S710:主控装置发送有效状态的片选信号。
主控装置先激活片选信号至有效状态,例如将片选信号置为低电平,并通过MCSN向连接的所有从属装置的SCSN发送该片选信号。具体可参考如图6中的CSN601和SCLK602。
S720:主控装置生成并向第一从属装置发送第一地址字段。
主控装置生成第一地址字段之后,主控装置将通过MSCLK向连接的从属装置的SCLK发送时钟信号的第一个周期的时候,开始向第一从属装置发送第一地址字段。具体可参考如图6中的SCLK602。应理解,在菊花链路中发送数据时,都需要同时发送时钟信号,其中每发送一个周期的时钟信号的同时,就发送一个比特的数据。
第一地址字段包括第一从属装置中的存储地址、非终止位置标识以及读写标志。其中,非终止位置标识用于指示该第一地址字段对应的从属装置不是菊花链中最后一个从属装置,即第一从属装置的输出端还连接了第二从属装置。读写标志用于指示主控装置对存储地址进行读操作或者写操作。
示例性地,如图8所示,第一地址字段的结构包括非终止位置标识,存储地址和读写标志位。其中以非终止位置标识TK等于“10”为例进行说明,读写标志位的值可以为读操作(read,R)或者写操作(write,W)。
S730:主控装置生成并向第一从属装置发送第一数据字段。
主控装置按周期向第一从属装置发送时钟信号以及第一数据字段。当第一地址字段的读写标志位的值为读操作时,第一数据字段无意义。当第一地址字段的读写标志位的值为写操作时,主控装置发送的第一数据字段为主控装置向第一从属装置中第一地址字段对应的存储地址需要写入的数据。
示例性地,图9为第一数据字段的结构示意图,如图9所示,第一数据字段包括D0至D7共8个比特的数据。
S740:主控装置生成并向第一从属装置发送第二地址字段。
主控装置按周期向第一从属装置发送时钟信号以及第二地址字段。第二地址字段包括第二从属装置中的存储地址,第二地址字段还包括终止位置标识或者非终止位置标识。其中,当第二从属装置为菊花链路中最后一个从属装置时,即第二从属装置的输出端连接主控装置,第二地址字段中携带的是终止位置标识。而当第二从属装置不是菊花链路中最后一个从属装置时,即第二从属装置的输出端连接第三从属装置,第二地址字段中携带的是非终止位置标识。
示例性地,当第二地址字段携带的是非终止位置标识时,其结构可参考图8。当第二地址字段携带的是终止位置标识时,其结构如图10所示,其中以终止位置标识TK等于“11”为例进行说明。
S750:主控装置生成并向第一从属装置发送第二数据字段。
主控装置按周期向第一从属装置发送时钟信号以及第二数据字段。主控装置发送的第二数据字段为主控装置向第二从属装置中第二地址字段对应的存储地址需要读取或写入的数据。第二数据字段的结构可参考图9中第一数据字段的结构,此处不再赘述。
这样,主控装置无需生成和发送标头字段,直接按从属装置连接顺序发送对应地址段和对应数据段,节省主控装置生成标头字段的时间。而且也不会因为需要在标头字段中指定从属装置的数量,而限制可连接从属装置的数量,使得主控装置可以连接的从属装置数量更多。
在一些实施例中,如图11所示,主控装置向第一从属装置发送第一地址字段、第一数据字段、第二地址字段、第二数据字段之后,第一从属装置和第二从属装置还会根据上述字段进行相应处理,并生成对应的状态字段和响应字段。具体包括,
S1110:第一从属装置接收第一地址字段和第一数据字段。
第一地址字段和第一数据字段是第一从属装置从主控装置处接收到第一个地址字段和数据字段,则第一从属装置可以确认该地址字段和数据字段是自身需要进行处理的字段。
S1120:第一从属装置生成并发送第一状态字段和第一响应字段。
第一从属装置可以根据自身需求生成第一状态字段,第一状态字段的内容可由第一从属装置自行定义,例如第一从属装置的芯片告警信息。第一从属装置还将会生成第一响应字段,用于向主控装置回复根据第一地址字段读取出来的数据内容。
S1130:第二从属装置转发第一状态字段和第一响应字段。
其中,第二从属装置可以是一边接收第一状态字段和第一响应字段,一边转发第一状态字段和第一响应字段。即每接收到一个比特的数据,就向下一个装置(主控装置或者第三从属装置)转发一个比特的数据。即步骤S1120和步骤S1130可以同步进行。
S1140:第一从属装置接收第二地址字段和第二数据字段。
第二地址字段和第二数据字段是第一从属装置接收到的第二个地址字段和数据字段,第一从属装置可以确定这不是需要对应进行处理的数据,进而将直接转发第二地址字段和第二数据字段。
S1150:第一从属装置向第二从属装置转发第二地址字段和第二数据字段。
第一从属装置还可以是在接收第二地址字段和第二数据字段的同时,转发第二地址字段和第二数据字段。即每接收到一个比特的数据,就向第二从属装置转发一个比特的数据。即步骤S1140和步骤S1150可以同步进行。
S1160:第二从属装置生成并发送第二状态字段和第二响应字段。
第二地址字段和第二数据字段是第二从属装置接收到第一个地址字段和数据字段,则第二从属装置可以确认该地址字段和数据字段是自身需要进行处理的字段。第二从属装置可以根据自身需求生成第二状态字段,第二状态字段的内容可由第二从属装置自行定义,例如第二从属装置的芯片告警信息。第二从属装置还将会生成第二响应字段,用于向主控装置回复根据第一地址字段读取出来的数据内容。
当第二地址字段中读写标志位的值为写操作时,且第一从属装置接收到包括携带的是终止位置标识的地址字段时,例如当第二从属装置为最后一个从属装置,则第二地址字段携带终止位置标识。第一从属装置和第二从属装置还会执行下述步骤S1170和步骤S1180。
S1170:第一从属装置产生使能信号,根据第一地址字段和第一数据字段完成对应写操作。
第一从属装置在接收到第二地址字段包括终止位置标识,则可以确定当前接收到的是最后一组字段,进而在转发第二地址字段和第二数据字段之后,还将产生一个使能信号,触发执行第一地址字段和第一数据字段对应的写操作,进而将第一数据字段的内容写入第一地址字段对应的地址中。
S1180:第二从属装置产生使能信号,根据第二地址字段和第二数据字段完成对应写操作。
第二从属装置在接收到第二地址字段包括终止位置标识,则可以确定当前接收到的是最后一组字段,进而在发送第二状态字段和第二响应字段之后,还将产生一个使能信号,触发执行第二地址字段和第二数据字段对应的写操作,进而将第二数据字段的内容写入第一地址字段对应的地址中。
这样,每个从属装置都可以是在接收到最后一个地址字段和数据字段时,才进行对应的读写操作,使得主控装置对每个从属装置的读写操作基本可以是同步生效的。
综上所述,主控装置无需生成和发送标头字段,节省了主控装置生成标头字段的时间。而且也不会因为需要在标头字段中指定从属装置的数量,而限制可连接从属装置的数量。并且,也不会存在从属装置需要重新组合生成其他从属装置的字段信息的情况,主控装置发送的数据和接收到的回复的顺序是对应的,无需等待最后一个从属装置处理完成后,最后一个从属装置才会按倒序发送各个从属装置的状态信息和响应信息。
下面以不同从属装置个数为例对本申请提供的串行通信方法进行举例说明。
首先,以主控装置连接一个从属装置为例,参考如图1所示的连接结构。
如图12所示,主控装置110先将片选信号1210置为低电平,使其为有效状态。然后,向从属装置120发送时钟信号SCLK1220。然后,主控装置110需要读写从属装置120的数据时,将先发送地址字段A1,再发送数据字段D1。其中,由于从属装置120为唯一的从属装置,其地址字段A1中携带终止位置标识TK,TK为“11”,[a4:a0]为从属装置120的存储器中的存储地址,R/W为读写标志位,D1为主控装置110传输的数据。
从属装置120接收到信号1230之后,将从[a4:a0]中读取数据出来,R1即为读出的数据响应。或者,当读写标志位为“W”时,将根据D1将D1中的数据写入从属装置的[a4:a0]。
在主控装置发送A1,从属装置120在接收A1的同时,从属装置120也将同步生成对应的状态、告警,即状态字段S1,并将S1传输给主控装置110,其中状态字段S1也有标识值TK,其中TK为“00”或“01”。
在一些实施例中,当从属装置120接收到信号1230之后,以及读取到A1中携带终止位置标识TK=“11”时,在读取D1后,如图13所示,还会生成一个使能信号1250。从属装置120在生成使能信号后,从属装置120将主控装置发送的数据D1写入地址[a4:a0]中,或者将地址[a4:a0]中数据读出。
下面再以主控装置连接三个从属装置为例,参考如图2所示的连接结构,其中,n等于3。
如图14所示,主控装置110先将片选信号1410置为低电平,使其为有效状态。然后,向从属装置120发送时钟信号SCLK1420。然后,主控装置110需要读写从属装置的数据时,将先发送A1、D1、A2、D2、A3、D3。其中,A1和D1对应从属装置1,A2和D2对应从属装置2,A3和D3对应从属装置3。由于从属装置3为最后一个从属装置,因此A1和A2中的标识值都为非终止位置标识“10”,A3的标识值为终止位置标识“11”。
从属装置1接收到信号1430中的A1和D1的过程中,因为A1携带的TK=“10”,则将根据A1和D1完成读写操作。并在接收A1和A2的同时,同步生成状态字段S1和响应字段R1,具体可参考前述图12及其相关描述。然后从属装置1向从属装置2发送S1和R1,并直接向从属装置2转发A2、D2、A3、D3。
从属装置2接收到信号1440中的S1和R1的过程中,因为S1携带的TK=“0”,则从属装置2将直接向从属装置3转发S1和R1。然后A2、D2为从属装置2接收到的第一个地址字段和数据字段,将根据A2和D2完成读写操作,并同步生成状态字段S2和响应字段R2。然后从属装置2向从属装置3发送S2和R2,并在接收A3和D3过程中,直接转发A3、D3。
从属装置3接收到信号1450中的S1、R1、S2、R2的过程中之后,因为S1和S2携带的TK=“0”,则从属装置3将直接向主控装置110转发S1、R1、S2、R2。然后A3、D3为从属装置3接收到的第一个地址字段和数据字段,将根据A3和D3完成读写操作,并同步生成状态字段S3和响应字段R3,然后向主控装置110转发S3和R3。
在一些实施例中,当从属装置1至从属装置3接收到A3之后,以及读取到A3中携带终止位置标识TK=“11”时,在读取D3后,如图15所示,还会生成一个使能信号1470。从属装置1至从属装置3在生成使能信号1470后,才会进行对应的写入操作。
下面介绍本申请实施例提供的串行通信装置。如图16A所示,图16A所示的串行通信装置1610可以应用于上述主控装置,串行通信装置1610具体包括发送单元1611。
发送单元1611用于依次向所述第一从属装置发送第一地址字段、第一数据字段、第二地址字段、第二数据字段,其中,第一地址字段包括第一从属装置中的存储地址、位置标识信息以及读写标志位,第一地址字段的位置标识信息包括非终止位置标识,读写标志位用于指示进行读操作或者写操作,其中,当第一地址字段的读写标志位为写操作,第一数据字段用于指示第一从属装置向第一地址字段对应的存储地址读取或写入的数据,第二地址字段包括第二从属装置中的存储地址、和位置标识信息以及读写标志位,第二地址字段的位置标识信息包括终止位置标识或者非终止位置标识,当第二地址字段的读写标志位为写操作,第二数据字段用于指示第二从属装置向第二地址字段对应的存储地址读取或写入的数据。
在一些实施例中,串行通信装置1610具体包括确定单元1612,确定单元1612用于将片选信号置为有效状态;发送单元1611还用于主控装置向第一从属装置和第二从属装置发送片选信号;主控装置向第一从属装置和第二从属装置发送时钟信号。
如图16B所示,图16B所示的串行通信装置1620可以应用于上述从机装置,例如从机装置1或者从机装置2,串行通信装置1620具体包括发送单元1621。
发送单元1621用于依次向第二从属装置发送第一状态字段、第一响应字段、第二地址字段、第二数据字段,其中,第一状态字段包括第一从属装置向主控装置发送的第一从属装置的状态信息数据,第一响应字段包括第一数据地址字段中存储地址对应的数据的响应回复。
在一些实施例中,发送单元1621还用于基于第二地址字段包括终止位置标识,第二从属装置向主控装置发送第一状态字段、第一响应字段、第二状态字段、第二响应字段,其中,第二从属装置的输出端连接主控装置的输入端,第二状态字段包括第二从属装置向主控装置发送的第二从属装置的状态信息,第二响应字段包括第二地址字段中存储地址对应的数据。
在另一些实施例中,发送单元1621还用于基于第二地址字段包括非终止位置标识,第二从属装置向第三从属装置发送第一状态字段、第一响应字段、第二状态字段、第二响应字段;其中,第二从属装置的输出端连接第三从属装置的输入端,第二状态字段包括第二从属装置向主控装置发送的第二从属装置的状态信息,第二响应字段包括对应于第二地址字段中存储地址对应的数据。
在另一些实施例中,串行通信装置1620还包括确定单元1622。确定单元1622用于基于第一从属装置接收到第二地址字段和第二数据字段且片选信号为有效状态,第一从属装置产生第一使能信号,第一使能信号用于指示第一从属装置开始根据第一地址字段和第一数据字段进行对应的写入操作。确定单元1622还用于基于第二从属装置接收到第二地址字段和第二数据字段且片选信号为有效状态,第二从属装置产生第二使能信号,第二使能信号用于指示第二从属装置开始根据第二地址字段和第二数据字段进行对应的写入操作。
在另一些实施例中,第一状态字段包括第一从属装置向主控装置发送的芯片告警或者第一从属装置的状态信息;第二状态字段包括第二从属装置向主控装置发送的芯片告警或者第一从属装置的状态信息。
综上所述,基于上述串行通信装置,主控装置无需生成和发送标头字段,节省了主控装置生成标头字段的时间。而且也不会因为需要在标头字段中指定从属装置的数量,而限制可连接从属装置的数量。并且,也不会存在从属装置需要重新组合生成其他从属装置的字段信息的情况,主控装置发送的数据和接收到的回复的顺序是对应的,无需等待最后一个从属装置处理完成后,最后一个从属装置才会按倒序发送各个从属装置的状态信息和响应信息。
下面介绍本申请实施例中电子设备100的结构。该电子设备100可以是上述的主控装置110和从属装置120。如图17所示,电子设备100包括:处理器1710、通信接口1720以及存储器1730,所示处理器1710、通信接口1720以及存储器1730通过内部总线1740相互连接。
处理器1710、通信接口1720和存储器1730可通过总线方式连接,也可通过无线传输等其他手段实现通信。本申请实施例以通过总线1740连接为例,其中,总线1740可以是外设部件互连标准(peripheral component interconnect,PCI)总线。所述总线1740可以分为地址总线、数据总线、控制总线等。为便于表示,图17中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
所述处理器1710可以由一个或者多个通用处理器构成,例如中央处理器(centralprocessing unit,CPU),或者CPU和硬件芯片的组合。处理器1710执行各种类型的数字存储指令,例如存储在存储器1730中的软件或者固件程序,它能使电子设备100提供较宽的多种服务。
存储器1730可以包括易失性存储器(volatile memory),例如随机存取存储器(random access memory,RAM);存储器1730也可以包括非易失性存储器(non-volatilememory),例如只读存储器(read-only memory,ROM)、或固态硬盘(solid-state drive,SSD);存储器1730还可以包括上述种类的组合。其中,存储器1730可以存储有应用程序代码以及程序数据。程序代码可以用于执行图7或图11实施例描述的其他步骤,这里不再进行赘述。
通信接口1720可以为有线接口(例如以太网接口),可以为内部接口(例如高速串行计算机扩展总线(peripheral component interconnect express,PCIe)、有线接口(例如以太网接口)或无线接口(例如蜂窝网络接口或使用无线局域网接口),用于与其他设备或模块进行通信。
需要说明的,图17仅仅是本申请实施例的一种可能的实现方式,实际应用中,所述电子设备还可以包括更多或更少的部件,这里不作限制。关于本申请实施例中未示出或未描述的内容,可参见前述图7或图11所述实施例中的相关阐述,这里不再赘述。图17所示的电子设备还可以是多个计算节点构成的计算机集群,本申请不作具体限定。
本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在处理器上运行时,图7或图11所示的方法流程得以实现。
本申请实施例还提供一种计算机程序产品,当所述计算机程序产品在处理器上运行时,图3或图5所示的方法流程得以实现。
本说明书中各个实施例采用递进、或并列、或递进和并列结合的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。
还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括上述要素的物品或者设备中还存在另外的相同要素。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种串行通信方法,其特征在于,应用于串行通信系统,所述串行通信系统包括主控装置、第一从属装置和第二从属装置,所述主控装置的输出端连接所述第一从属装置的输入端,所述第一从属装置的输出端连接所述第二从属装置的输入端,所述方法包括:
所述主控装置依次向所述第一从属装置发送第一地址字段、第一数据字段、第二地址字段、第二数据字段,
其中,所述第一地址字段包括所述第一从属装置中的存储地址、位置标识信息以及读写标志位,所述第一地址字段的位置标识信息包括非终止位置标识,所述读写标志位用于指示进行读操作或者写操作,其中,当所述第一地址字段的读写标志位为写操作,所述第一数据字段用于指示所述第一从属装置向所述第一地址字段对应的存储地址写入的数据,
所述第二地址字段包括所述第二从属装置中的存储地址、位置标识信息以及读写标志位,所述第二地址字段的位置标识信息包括终止位置标识或者非终止位置标识,当所述第二地址字段的读写标志位为写操作,所述第二数据字段用于指示所述第二从属装置向所述第二地址字段对应的存储地址写入的数据。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述主控装置将片选信号置为有效状态;
所述主控装置向所述第一从属装置和所述第二从属装置发送所述片选信号;
所述主控装置向所述第一从属装置和所述第二从属装置发送时钟信号。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
所述第一从属装置依次向所述第二从属装置发送第一状态字段、第一响应字段、所述第二地址字段、所述第二数据字段,
其中,所述第一状态字段包括所述第一从属装置向所述主控装置发送的所述第一从属装置的状态信息,所述第一响应字段包括所述第一地址字段中存储地址对应的数据。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
基于所述第二地址字段包括所述终止位置标识,所述第二从属装置向所述主控装置发送所述第一状态字段、所述第一响应字段、第二状态字段、第二响应字段,
其中,所述第二从属装置的输出端连接所述主控装置的输入端,所述第二状态字段包括所述第二从属装置向所述主控装置发送的所述第二从属装置的状态信息,所述第二响应字段包括所述第二地址字段中存储地址对应的数据。
5.根据权利要求3所述的方法,其特征在于,所述方法还包括:
基于所述第二地址字段包括所述非终止位置标识,所述第二从属装置向第三从属装置发送所述第一状态字段、所述第一响应字段、第二状态字段、第二响应字段;
其中,所述第二从属装置的输出端连接所述第三从属装置的输入端,所述第二状态字段包括所述第二从属装置向所述主控装置发送的所述第二从属装置的状态信息,所述第二响应字段包括对应于所述第二地址字段中存储地址对应的数据。
6.根据权利要求4所述的方法,其特征在于,所述方法还包括:
基于所述第一从属装置接收到所述第二地址字段和所述第二数据字段且所述片选信号为有效状态,所述第一从属装置产生第一使能信号,所述第一使能信号用于指示所述第一从属装置开始根据所述第一地址字段和所述第一数据字段进行对应的写入操作;
基于所述第二从属装置接收到所述第二地址字段和所述第二数据字段且所述片选信号为有效状态,所述第二从属装置产生第二使能信号,所述第二使能信号用于指示所述第二从属装置开始根据所述第二地址字段和所述第二数据字段进行对应的写入操作。
7.根据权利要求4所述的方法,其特征在于,
所述第一状态字段包括所述第一从属装置向所述主控装置发送的芯片告警信息;
所述第二状态字段包括所述第二从属装置向所述主控装置发送的芯片告警信息。
8.一种串行通信系统,其特征在于,所述串行通信系统包括主控装置、第一从属装置和第二从属装置,所述主控装置的输出端连接所述第一从属装置的输入端,所述第一从属装置的输出端连接所述第二从属装置的输入端,
所述主控装置,用于依次向所述第一从属装置发送第一地址字段、第一数据字段、第二地址字段、第二数据字段,
其中,所述第一地址字段包括所述第一从属装置中的存储地址、位置标识信息以及读写标志位,所述第一地址字段的位置标识信息包括非终止位置标识,读写标志位用于指示进行读操作或者写操作,其中,当所述第一地址字段的读写标志位为写操作,所述第一数据字段用于指示所述第一从属装置向所述第一地址字段对应的存储地址写入的数据,
所述第二地址字段包括所述第二从属装置中的存储地址、位置标识信息以及读写标志位,所述第二地址字段的位置标识信息包括终止位置标识或者非终止位置标识,当所述第二地址字段的读写标志位为写操作,所述第二数据字段用于指示所述第二从属装置向所述第二地址字段对应的存储地址写入的数据。
9.一种电子设备,其特征在于,包括处理器和存储器,所述存储器用于存储指令,所述处理器用于执行所述指令,当所述处理器执行所述指令时,执行如权利要求1至7中任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,包括指令,当所述指令在电子设备上运行时,使得所述电子设备执行如权利要求1至7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410252006.1A CN118132475A (zh) | 2024-03-05 | 2024-03-05 | 串行通信方法、系统、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410252006.1A CN118132475A (zh) | 2024-03-05 | 2024-03-05 | 串行通信方法、系统、设备及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN118132475A true CN118132475A (zh) | 2024-06-04 |
Family
ID=91241654
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410252006.1A Pending CN118132475A (zh) | 2024-03-05 | 2024-03-05 | 串行通信方法、系统、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN118132475A (zh) |
-
2024
- 2024-03-05 CN CN202410252006.1A patent/CN118132475A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109726163B (zh) | 一种基于spi的通信系统、方法、设备和储存介质 | |
US8516165B2 (en) | System and method for encoding packet header to enable higher bandwidth efficiency across bus links | |
CN102984123A (zh) | 使用多个消息组的计算机系统中的代理之间的通信消息请求事务类型 | |
CN109753478B (zh) | 一种基于fpga的并行数据处理方法、装置 | |
TW200842592A (en) | Improved DMAc to handle transfers of unknown lengths | |
CN113660351B (zh) | 数据通信方法、装置、通信终端及计算机可读存储介质 | |
CN105474238A (zh) | 在基于大容量存储的接口上操作基于m-phy的通信以及相关连接器、系统和方法 | |
WO2005057400A1 (ja) | 電子装置、その制御方法、ホスト装置及びその制御方法 | |
CN105786734B (zh) | 数据传输的方法、扩展装置、外围设备及系统 | |
CN110008172A (zh) | 一种片上系统 | |
CN107436851A (zh) | 串行外设接口四线隔离系统及其控制方法 | |
CN112422485B (zh) | 一种传输控制协议的通信方法及装置 | |
US10095643B2 (en) | Direct memory access control device for at least one computing unit having a working memory | |
CN118132475A (zh) | 串行通信方法、系统、设备及介质 | |
US5590372A (en) | VME bus transferring system broadcasting modifiers to multiple devices and the multiple devices simultaneously receiving data synchronously to the modifiers without acknowledging the modifiers | |
CN103106177B (zh) | 多核网络处理器的片上互联结构及其方法 | |
CN115576889B (zh) | 链式的多芯片系统及通讯方法 | |
CN106940684B (zh) | 一种按比特写数据的方法及装置 | |
CN113312298B (zh) | 处理器通信方法和装置、电子设备、计算机可读存储介质 | |
CN113609041A (zh) | 一种数据传输方法及系统 | |
CN117349214B (zh) | 一种具备拆包组包能力的axi协议转串行通讯协议的转换桥 | |
CN218632697U (zh) | 一种算力服务终端 | |
CN116226027B (zh) | 数据传输系统、方法、装置、通信设备及存储介质 | |
WO2022227053A1 (zh) | 通信设备和通信方法 | |
CN115203123A (zh) | 一种基于srio接口的接口装置和雷达 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |