CN103460201B - 串行接口 - Google Patents

串行接口 Download PDF

Info

Publication number
CN103460201B
CN103460201B CN201280008949.5A CN201280008949A CN103460201B CN 103460201 B CN103460201 B CN 103460201B CN 201280008949 A CN201280008949 A CN 201280008949A CN 103460201 B CN103460201 B CN 103460201B
Authority
CN
China
Prior art keywords
equipment
main
line
data
web member
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.)
Active
Application number
CN201280008949.5A
Other languages
English (en)
Other versions
CN103460201A (zh
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.)
Nordic Semiconductor ASA
Original Assignee
Nordic Semiconductor ASA
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 Nordic Semiconductor ASA filed Critical Nordic Semiconductor ASA
Publication of CN103460201A publication Critical patent/CN103460201A/zh
Application granted granted Critical
Publication of CN103460201B publication Critical patent/CN103460201B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • G06F13/4286Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using a handshaking protocol, e.g. RS232C link
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/36Handling requests for interconnection or transfer for access to common bus or bus system
    • G06F13/362Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • G06F13/4291Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using a clocked protocol

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Systems (AREA)
  • Communication Control (AREA)

Abstract

一种串行接口包括时钟线、请求线、就绪线、主到从数据线和从到主数据线。主设备通过时钟线将时钟信号传输到从设备。在第一交互中,主设备通过请求线将主传输请求信号发送到从设备;作为响应,从设备通过就绪线发送从传输接收信号,引起主设备通过主到从数据线将二进制数据传输到从设备。在第二交互中,从设备通过就绪线发送从传输请求信号;作为响应,主设备通过请求线发送主传输接收信号,引起从设备通过从到主数据线将二进制数据传输到主设备。在至少一种交互中,主设备和从设备彼此同时传输二进制数据。

Description

串行接口
技术领域
本发明涉及一种串行接口。
背景技术
串行接口通常用来允许一个电子元件或设备与另一个做二进制数据通信,且一次一位。例如,安装在印刷电路板(PCB)上的微控制器单元(MCU)和无线电芯片可使用包含PCB上的导线的串行接口来彼此做数据通信。在该情况下,串行总线的使用比并行总线的使用更合适,因为它在集成电路上不需要大量的引脚(pin),从而节省了空间。
一种常见的串行接口是串行***接口(SPI)。该接口提供了主设备和从设备之间的同步通信。它使用时钟线和两条数据线,通过所述时钟线主设备可以发送时钟信号,所述数据线在数据流的每个方向上一条。通过时钟信号使数据交换同步。
SPI的问题在于它没有提供借此从设备可以启动与主设备通信的机制。
发明内容
本发明力图提供缓解该缺陷的一种串行接口。
从一个方面来看,本发明提供了主设备和从设备之间通过串行接口全双工通信的一种方法,该串行接口包括五根分开的线,即时钟线、请求线、就绪线、主到从数据线和从到主数据线,该方法包括:
主设备通过时钟线传输时钟信号到从设备;
在第一交互中,主设备通过请求线将主传输请求信号发送到从设备;从设备接收该主传输请求信号,并且,作为响应,通过就绪线将从传输接收信号发送到主设备;主设备接收该从传输接收信号,并且,作为直接响应,通过主到从数据线将二进制数据传输到从设备;以及
在第二交互中,从设备通过就绪线或从-请求线将从传输请求信号发送到主设备;主设备接收该从传输请求信号,并且,作为响应,通过请求线或通过主-就绪线将主传输接收信号发送到该从设备;从设备接收该主传输接收信号,并且,作为直接响应,通过从到主数据线传输二进制数据到主设备;其中,在第一交互和第二交互的至少一个中,在从设备通过从到主数据线传输二进制数据的同时,主设备通过主到从数据线传输数据。
因而,本领域的技术人员会明白,在避免了哪个首先发起通信的冲突,并且支持两个设备之间的全双工通信(即,双向同步数据流动)时,根据本发明的串行接口可以允许从设备或者主设备发起通信。
这种配置允许在一个或两个方向上有效的数据流动,而不必,例如,从设备在能够发送数据之前不得不等待来自主设备的轮询命令。因此,在事件发生在从设备(或主设备)处时,这将导致主设备(或从设备)更快的响应时间。
例如,如果从设备是集成无线电收发器,当该从设备接收到无线电数据包时,它可以立刻表明其想要将所接收的数据包的内容传送到MCU(主设备),并且该MCU一旦对从传输请求信号进行了确认,从设备就可以开始将内容传输到MCU,而无需等待被MCU轮询。
从另一方面来看,本发明提供了一种通信***,其包括主设备、从设备和串行接口,其中该串行接口包括五根分开的线,即时钟线、请求线、就绪线、主到从数据线和从到主数据线,其中:
主设备被配置为通过时钟线将时钟信号传输到从设备;
在第一交互中,主设备被配置为通过请求线将主传输请求信号发送到从设备;从设备被配置为接收该主传输请求信号,并且,作为响应,通过就绪线将从传输接收信号发送到主设备;主设备进一步被配置为接收该从传输接收信号,并且,作为直接响应,通过主到从数据线传输二进制数据到从设备;
在第二交互中,从设备被配置为,通过就绪线或从-请求线将从传输请求信号发送到主设备;主设备被配置为接收该从传输请求信号,并且,作为响应,通过请求线或通过主-就绪线发送主传输接收信号到从设备;该从设备进一步被配置为接收该主传输接收信号,并且,作为直接响应,通过从到主数据线将二进制数据传输到主设备;以及
在第一交互和第二交互至少其中一个中,主设备和从设备能够彼此同时传输二进制数据。
从进一步的方面来看,本发明提供了主设备,其包括五个串行接口连接件,即时钟连接件、请求连接件、就绪连接件、主到从数据连接件和从到主数据连接件,其中:
主设备被配置为由时钟连接件传输时钟信号到从设备;
在第一交互中,主设备被配置为从请求连接件发送主传输请求信号到从设备;及被配置为在就绪连接件处接收来自从设备的从传输接收信号并由主到从数据连接件传输二进制数据到从设备作为直接响应;
在第二交互中,主设备被配置为从就绪连接件处或在从-请求连接件处接收来自从设备的从传输请求信号,并且,作为响应,从所述从请求连接件或从主-就绪连接件将主传输接收信号发送到从设备;并且,配置为从所述从到主数据连接件处接收来自从设备的二进制数据;以及
在第一交互和第二交互的至少一个中,当主设备在从到主数据连接件处接收二进制数据的同时,主设备能够由主到从数据连接件传输二进制数据数据。
从再进一步的方面来看,本发明提供了从设备,其包括五个串行接口连接件,是时钟连接件、请求连接件、就绪连接件、主到从数据连接件和从到主数据连接件,其中:
从设备被配置为从时钟连接件处接收来自主设备的时钟信号;
在第一交互中,从设备被配置为从请求线接收来自主设备的主传输请求信号,并且,作为响应,从就绪连接件将从传输接收信号发送到主设备;及被配置为在主到从数据连接件处接收来自主设备的二进制数据;
在第二个交互中,从设备被配置为由就绪连接件或由从-请求连接件发送从传输请求信号到主设备;被配置为在请求连接件处或在主-就绪连接件处接收来自主设备的主传输接收信号并由从到主数据线传输二进制数据到主设备作为直接响应;
在第一交互和第二交互的至少一个中,在从设备由主到从数据连接件传输二进制数据的同时从设备能够在从到主数据连接件处接收二进制数据。
时钟连接件(例如引脚)可以被连接到时钟线(例如,PCB导线)。类似地,任何一个或所有的请求连接件、就绪连接件、主到从数据连接件和从-到主数据连接件可被连接到各自的线。如果存在的话,从-请求连接件可被连接到从-请求线,主-响应连接件可被连接到主-响应线。
时钟连接件、主到从数据连接件和从到主数据连接件可被连接到SPI总线。
主设备优选将请求线保持在两种可能的状态之一。为了方便起见,将其称为高态和低态。它们可分别对应于高电压和低电压,或低电压和高电压。主传输请求信号可包括请求线的状态的触发。在一些实施方式中,主传输请求信号包括将请求线由高降到低。
优选地,从设备将就绪线保持在两种可能的状态之一。为了方便起见,将其称为高态和低态。它们可分别对应于高电压和低电压,或低电压和高电压。从传输接收信号可包括就绪线的状态的触发。在一些实施方式中,从传输接收信号包括将就绪线由高降到低。
从传输请求信号可包括就绪线的状态的触发。在一些实施方式中,从传输请求信号包括将就绪线由高降到低。
主传输接收信号可包括请求线的状态的触发。在一些实施方式中,主传输接收信号包括将请求线由高降到低。
主到从数据线和主-到-主数据线可彼此独立操作,或可配置该***以便两条线一起是激活。在后一种情况下,如果只有一个设备有数据要传输,那么另一设备就可传输空数据或虚拟数据(例如,全都是零比特)。
主设备可被配置为仅当其传输和/或接收二进制数据时才传输时钟信号。
在某些情形下,可以将主设备配置为,以便在从设备将消息传输到主设备的同时,主设备向从设备传输消息,其中两消息彼此有不同的长度。如果从到主数据线和主到从数据线总是一起被激活,那么具有较短要发消息的设备会在较短消息的末端添加例如虚拟数据或空数据,使其等于较长消息的长度。
消息可包含有关其长度的信息。该消息可包含表达整个消息长度的长度数字。例如,消息的第一个字节可以是该消息的字节的总数或该消息的可变长度的数据部分的总数。
主设备可以被配置为通过从到主数据线接收来自从设备的消息长度的信息并使用该消息的长度信息来确定何时结束交互。优选地,主设备被配置为,一旦主设备既(i)接收了主设备通过从到主数据线在传输的任何消息的所有比特,又(ii)传输它通过主到从数据线在传输的任何消息的所有比特,主设备就结束该交互。
以这种方式,可以确保能同时并彻底地交换不同长度的消息,提供强健而有效的通信机制。
这种想法自身就是新的和有创造性的,且由此从进一步的方面来看,本发明提供了主设备和从设备之间通过同步串行连接件交换数据的一种方法,其包括在主设备将二进制消息传输到从设备的同时,从设备将包含消息长度的信息的二进制消息传输到主设备,其中,一旦主设备既(i)接收了相当于消息长度的信息的若干消息比特,又(ii)传输了主设备正传输到从设备的消息的所有比特,主设备就将传输结束信号发送到从设备。
从进一步的方面来看,本发明提供了一种数据交换***,该***包括主设备、从设备和同步串联连接件,其中,从设备被配置为:当主设备将二进制消息传输到从设备的同时,将包含消息长度的二进制消息传输到主设备,且其中,主设备被配置为一旦主设备既(i)接收了与消息长度的信息相一致的来自从设备的若干消息比特,又(ii)传输了主设备向从设备传输的消息的所有比特,主设备就将传输结束信号发送到从设备。
从再进一步的方面来看,本发明提供了被配置为通过同步串联连接件,接收来自从设备的包含消息长度的信息的二进制消息的主设备,且同时,通过同步串联连接将二进制消息传输到从设备;并进一步被配置为一旦主设备既(i)接收了与消息长度的信息相一致的来自从设备的若干消息比特,又(ii)传输了主设备正向从设备传输的消息的所有比特,主设备就将传输结束信号发送到从设备。
优选地,两消息同时开始传输,优选从在第一时钟信号是被同时传输的每个消息的最低有效位开始。
前述方面的可选特征也可以是这些方面的特征。
在任何前述方面,通过主设备在请求线或结束-信号线上发送主传输结束信号到从设备,可结束交互(即,一段时间连续或持续的通信)。可替换地或另外地,通过主设备停止在时钟线上发送时钟信号可结束交互。
主传输结束信号可包括请求线的状态的触发。在一些实施方式中,主传输结束信号包括将请求线从低升到高。
从设备可被配置为响应接收主传输结束信号而触发就绪线的状态。在一些实施方式中,从设备响应接收主传输结束信号而从将就绪线由低到升高。
主设备可被配置为在发送主传输请求信号之前检查就绪线或请求线(或二者)的状态,并只有所述线的状态满足主传输条件时才发送主传输请求信号。主传输条件可以是该线位于高态。
类似地从设备可以被配置为在发送从传输请求信号之前检查就绪线或请求线(或二者)的状态,并只有所述线的状态满足从传输条件时才发送从传输请求信号。从传输条件可以是该线位于高态。
以这种方式,通过确保在有交互已在进行中时不发送传输请求,可以避免来自从设备和主设备的传输请求之间的冲突。
主设备优选包括传输缓冲区和接收缓冲区。这些可能是同一个缓冲区(例如,单一的8比特的缓冲区),在这种情况下,比特可从缓冲区的一端传输而从另一端接收(循环缓冲区)。然而,优选地,它们是分开的缓冲区。
主设备可包括多个传输缓冲区和/或多个接收缓冲区。控制器在主设备中(其可能包括硬件逻辑或软件)可被配置为选择缓冲区其中的一个作为活跃传输缓冲区,该活跃缓冲区可用于当前或下次传输操作。可以类似地选择活跃接收缓冲区。
以相似的方式,从设备可以包括单一的传输和接收缓冲区,但优选地包括一个或多个传输缓冲区和一个或多个分开的接收缓冲区。从设备可包括被配置为选择活跃传输和/或接收缓冲区的控制器。
缓冲区在主设备和从设备上可以都是相同的尺寸(例如8比特,或常数量的字节),或者它们可以是不同的尺寸。
主和/或从设备的缓冲区可在硬件或软件中实现。
从设备可被配置为,如果从设备确定主设备在从设备接收到完整的消息之前结束了交互,就请求重传来自主设备的消息。例如,消息可包含消息长度的信息,及从设备可被配置为当从设备接收主传输结束信号时,使用此信息来确定是否已经接收到相应数目的消息比特。使用就绪线和/或从到主数据线可提出该重传请求。例如,从设备可通过就绪线发送从传输请求信号,然后将包括预定的重传请求的消息传输到主设备。
主设备可以是,或包括,微控制器或中央处理器单元。从设备可以是,或者包括,微控制器或中央处理器单元。本发明特别适合于以软件控制主设备和从设备两者。然而也可设想,从设备可能是,或包括,硬件设备,例如无线电芯片的连接芯片组,或一些不一定具有通用用途的处理器的其它元件。
接口的连接线可采用任何适当的形式。它们可以是光学的,但优选是电气的。包括至少5根连接线的电缆可连接在主设备和从设备之间;然而,在优选实施方式中,连接线在PCB上形成。在其它实施方式中,主设备和从设备可被集成在单一的硅芯片上,而连接线可以包括硅芯片上的导体。
优选地,以与时钟信号相同的速率传输数据比特;即每个时钟脉冲一个比特。可在时钟信号的上升沿或下降沿上传输和读取数据。在一些实施例中,在时钟的上升沿上捕获数据和在下降沿上传输数据。
尽管本发明参考主设备和一个从设备来描述,但是应当理解,可以替代地使用一个主设备和多个从设备。从选择线可将主设备连接到从设备,且可用于选择从设备其中的一个作为活跃设备,就像从SPI所知的一样。如果所述线为所有从设备之间共享,那么不活跃从设备可被配置为忽略请求和主到从数据连接线上的信号,并不在就绪和从到主数据连接线上传输任何信号。
在一些实施例中包含多个从设备,每个从设备可以有其自身的就绪线,及可选的其自身的请求线,连接主设备。以这种方式,甚至在主设备和另一个从设备之间的交互期间,从设备都能够将从传输请求信号发送到主设备,并等待主传输接收信号。时钟线、主到从数据线和从到主数据线还可在多个从设备间共享,借此与每个从设备具有完全独立的串行接口相比节省空间。
本发明的任何方面的可选的或优先的特征可以是任何其它方面的可选的或优选的特征,无论在哪里只要恰当。部分或全部的方面可结合在单一的实施方式中。
附图说明
现在将仅通过示例的方式,参考附图,描述本发明的某些优选实施方式,其中:
图1是示出了微控制器(MCU)、无线电收发器和它们之间的串行连接的示意图;
图2是示出了在无线电收发器中内部元件的示意图;
图3是示出了由MCU发起的交互的时序图;和
图4是示出了由无线电发起的交互的时序图。
具体实施方式
图1示出了MCU1和集成的单芯片的无线电收发器2。例如,这些可能是安装在普通PCB上的单独的包。该MCU1和无线电之间有五条串行总线3,其可由在PCB上的导线形成。该串行线是:请求线(REQN)、就绪线(RDYN)、时钟线(CLK)、主-出从-进数据线(MOSI)和主-进从-出数据线(MISO)。
信号 MCU 无线电 描述
MISO 输入 输出 SPI:主进从出
MOSI 输出 输入 SPI:主出从进
CLK 输出 输入 SPI:串行数据时钟
REQN 输出 输入 MCU到无线电握手信号
RDYN 输入 输出 无线电到MCU握手信号
在MCU1上运行的软件应用可使用串行连接件来将数据发送到无线电2,诸如要由无线电传输的命令和消息,并接收来自无线电2的数据,诸如由无线电接收到的状态信息和消息。
图2示出了用于控制串行接口的无线电2内的某些元件。
时钟线、请求线和就绪线连接到应用控制器接口(ACI)的控制元件4。主-出从-进数据线连接到MOSI-到-缓冲区的控制元件5,而主-进从-出的数据线连接到MISO-到-缓冲区的控制元件6。MOSI-到-缓冲区的控制元件5可以向n个接收(RX)缓冲区7的任何一个写。MISO-到-缓冲区的控制元件6可以从m个传输(TX)缓冲区8的任何一个读取。数字n和m可以是相同或不同的。每个缓冲区为x个字节长。x是对于应用软件协议会使用ACI的最大的(片断的)长度。在一个例子中,n=5,m=2且x=32。在另一个例子中,n=m=10且x=4。ACI的控制元件4,缓冲区的控制元件5、6及RX和TX缓冲区7、8都在硬件中实现。
ACI的控制元件4有到两个缓冲区的控制元件5、6,RX缓冲区7,TX缓冲区8和应用控制器接口(ACI)的驱动元件9的连接件,其可在硬件或软件中实现。ACI的驱动元件9在串行连接缓冲区和无线电收发器之间接口。
MCU1可具有与图2中所示的相似或相同的布置,尽管采用每个连接线的方向反向。
在使用中,MCU1可以通过将REQN线接地来请求与无线电2通信。无线电2,如果准备好通信,会将RDYN线接地,否则它会将其保持在高位直到它准备好。该MCU1一旦看到RDYN线接地就开始数据传输。
无线电2可以通过将RDYN线接地来请求与MCU1通信。MCU1通过将REQN线接地进行确认并开始数据传输来响应。
数据传输总是由MCU1进行协调,MCU1管理着CLK线上的时钟信号。
当无线电2将RDYN线降低到接地,表示它希望传输消息到MCU1时,无线电2也将消息的最低有效数据比特置于MISO线上。如果MCU1也有数据要发送到无线电2,它将最低有效数据比特置于MOSI线上,然后将CLK线升到高态。无线电2接收时钟信号并从MOSI线读取该数据比特。同时,MCU1从MISO线读取最低有效数据比特。
MCU1接着将CLK线降低到接地,并将次最低有效数据比特置于MOSI线上。从设备将读取的数据比特转移至活跃的RX缓冲区内,并将该次最低有效数据比特置于MISO线上。
继续该过程直到所需数量的数据比特(例如两消息的全部内容)已经在两个方向上完成传输。
每个数据比特在时钟的下降沿进行传输并且在时钟的上升沿捕获。
ACI控制元件4处理流控制、协商、不对称数据传输和重传。它还监管与重传相关的缓冲控制元件5、6。
当无线电2已准备接收由MCU1请求的数据传输时,ACI控制元件4能够在RDYN线上进行确认。当它对MCU1有发起数据传输(传输无线电2有数据进行传输)的请求时,它还可以在RDYN线上表明。
对于非对称数据传输,ACI的控制元件4对于MOSI线和MISO线有独立的缓冲控制元件5、6。如果ACI的控制元件4检测到成功的、完整的传输和/或接收,则它引起MOSI的缓冲控制元件5前进到作为活跃缓冲区的下一个接收和/或传输缓冲区。
在RDYN线上发送信号之前,ACI控制元件4对MOSI和MISO的缓冲控制元件5、6进行检查,以确保在其一或两个方向上有足够的缓冲空间可用。
缓冲器控制元件5、6在数据传输期间起独立移位逻辑的作用。ACI的控制元件4表明数据从哪个或向哪个缓冲区发生移位或捕获。
ACI驱动元件9可以访问ACI控制元件4,并按MCU1和无线电芯片2的请求处理所有传入和传出的数据传输。
图3示出了从MCU1发送到无线电2的数据包的时序图,与以下事件序列有关:
-MCU1通过设置REQN引脚接地来请求发送数据的权利;
-无线电芯片2在同意MCU1开始传输数据的请求时,将RDYN引脚接地;
-MCU1开始在CLK引脚上发送时钟信号并开始从MOSI引脚传输数据。MCU1的首个字节定义消息的长度。第二个字节是消息数据的第一个字节。第n个字节是消息数据的最后一个字节;
-MCU1停止时钟并将REQN引脚设置为高态来终止数据交互;以及
-无线电2将RDYN引脚复位为高。
如果无线电2有数据等待发送到MCU1,它可以在MCU1进行传输的同时传输该等待发送的数据。
图4示出了将数据包从无线电2发送到MCU1的时序图,与以下事件序列有关:
-无线电芯片2将RDYN引脚接地;
-MCU1将REQN引脚接地,开始在CLK引脚上发送时钟信号,并且开始在MOSI引脚上取数据。无线电2的第一个字节是MCU1丢弃的内部调试字节。第二个字节定义了消息的长度。第三个字节是消息数据的第一个字节。第n个字节是消息数据的最后一个字节;
-一旦MCU1已经接收到整个消息,就停止时钟并将REQN引脚为设置为高态来终止数据交互;以及
-无线电2将RDYN引脚复位为高态。
如果MCU1有数据等待发送,它可以在无线电2进行传输的同时传输该等待发送的数据。
在实现中,数据包的最大长度可以基于可用的缓冲区大小确定。
使用REQN、RDYN、CLK、MOSI和MISO线,MCU1和无线电2可以在全双工模式下接收和传输数据。
将消息长度嵌入到传输数据中,允许MCU1记录同时传输的消息的最大长度,从而确保所有数据比特到达无线电2和MCU1。
如果MCU1没有根据嵌入的传输长度记录所有预期的数据比特,ACI的控制元件4(和/或可选地更高级的软件)可以检测到不完全的传输。这会导致无线电2请求重传。
差错检测可以在更高协议级别中实现。

Claims (15)

1.一种包括主设备、从设备和二者之间的同步串行连接件的数据交换***,其中,所述从设备被配置为:在所述主设备将包含数据的主到从二进制消息传输到所述从设备的同时,所述从设备将从到主二进制消息传输到所述主设备,所述从到主二进制消息包含数据和与从到主二进制消息的长度有关的消息长度信息,并且其中所述主设备被配置为:
确定所述主设备既(i)接收了与消息长度的信息相一致的来自从设备的若干消息比特,又(ii)传输了所述主到从二进制消息的所有比特;并且
响应于这个确定结果,将传输结束信号发送到所述从设备。
2.如权利要求1所述的数据交换***,被配置为同时开始主到从二进制消息和从到主二进制消息的传输。
3.如权利要求1或2所述的数据交换***,其中,所述串行连接件包括五根独立的线,即时钟线、请求线、就绪线、主到从数据线和从到主数据线,并且,其中所述主设备被配置为:
通过所述时钟线将时钟信号发送到所述从设备;并且
通过所述请求线将主传输请求信号发送到所述从设备,通过所述就绪线从所述从设备接收从传输接受信号,作为直接响应,通过主到从数据线将包含数据的所述主到从二进制消息发送到所述从设备。
4.如权利要求1或2所述的数据交换***,其中,所述串行连接件包括五根独立的线,即时钟线、请求线、就绪线、主到从数据线和从到主数据线,并且,其中所述从设备被配置为:
通过所述时钟线从所述主设备接收时钟信号;并且
通过所述就绪线或通过从-请求线将从传输请求信号发送到所述主设备,通过所述请求线或通过主-就绪线从所述主设备接收主传输接受信号,作为直接响应,通过所述从到主数据线将包含数据和消息长度信息的所述从到主二进制数据传输到所述主设备。
5.如权利要求1或2所述的数据交换***,其中,所述主设备配置为使用所接收到的消息长度信息来确定何时结束交互。
6.如权利要求1或2所述的数据交换***,其中,所述主到从二进制消息包含与长度有关的信息。
7.如权利要求6所述的数据交换***,其中,所述从设备被配置为:当所述从设备接收到所述传输结束信号时,使用从所述主设备接收的消息长度信息来确定主到从消息的相应数量的比特是否已经被接收。
8.如权利要求6所述的数据交换***,其中,所述从设备被配置为:如果所述从设备确定,在主到从二进制消息由所述从设备完全接收之前,所述主设备就结束了交互,那么所述从设备请求从所述主设备重传所述主到从二进制消息。
9.如权利要求1或2所述的数据交换***,其中,所述串行连接件包括五根独立的线,即时钟线、请求线、就绪线、主到从数据线和从到主数据线,其中:
所述主设备被配置为通过所述时钟线将时钟信号发送到所述从设备;
所述主设备被配置为,在第一交互中,通过所述请求线将主传输请求信号发送到所述从设备;所述从设备被配置为接收所述主传输请求信号,并且,作为响应,通过就绪线将从传输接受信号发送到所述主设备;所述主设备进一步配置为接收所述从传输接受信号,并且,作为直接响应,通过所述主到从数据线将二进制数据传输到所述从设备;
所述从设备被配置为,在第二交互中,通过所述就绪线或通过从-请求线将从传输请求信号发送到所述主设备;所述主设备被配置为接收所述从传输请求信号,并且,作为响应,通过所述请求线或通过主-就绪线将主传输接受信号发送到所述从设备;所述从设备进一步被配置为接收所述主传输接受信号,并且,作为直接响应,通过所述从到主数据线将二进制数据传输到所述主设备;以及
所述主设备和从设备在所述第一交互和第二交互的至少一个中,能够彼此同时传输二进制数据。
10.一种主设备,被配置为通过同步串行连接在接收来自从设备的从到主二进制消息的同时通过所述同步串行连接将包含数据的主到从二进制消息传输到所述从设备,其中,所述从到主二进制消息包括数据和与从到主二进制消息的长度相关的消息长度信息;并且进一步被配置为:
确定所述主设备既(i)接收了与消息长度的信息相一致的来自从设备的若干消息比特,又(ii)传输了所述主到从二进制消息的所有比特;并且
响应于这个确定结果,将传输结束信号发送到所述从设备。
11.如权利要求10所述的主设备,其中,所述主设备包括五个串行接口连接件,即时钟连接件、请求连接件、就绪连接件、主到从数据连接件和从到主数据连接件,并且被配置为:
通过时钟线将时钟信号发送到所述从设备;并且
将主传输请求信号从所述请求连接件发送到所述从设备;在就绪连接件处,从所述从设备接收从传输接受信号,作为直接响应,将包含数据的所述主到从二进制消息从所述主到从数据连接件发送到所述从设备。
12.如权利要求10或11所述的主设备,其中,所述主设备包括五个串行接口连接件,即时钟连接件、请求连接件、就绪连接件、主到从数据连接件和从到主数据连接件,并且被配置为:
通过时钟线将时钟信号发送到所述从设备;并且
在所述就绪连接件或从-请求连接件处,从所述从设备接收从传输请求信号,并且,作为响应,将主传输接受信号从所述请求连接件或主-就绪连接件发送到所述从设备;并且,在所述从到主连接件处从所述从设备接收所述包含数据和消息长度信息的所述从到主二进制消息。
13.如权利要求10或11所述的主设备,其中,所述主设备被配置为使用所接收的消息长度信息来确定何时终止交互。
14.如权利要求10或11所述的主设备,其中,所述主到从二进制消息包括与长度有关的信息。
15.如权利要求10或11所述的主设备,所述主设备包括五个串行接口连接件,即时钟连接件、请求连接件、就绪连接件、主到从数据连接件和从到主数据连接件,其中所述主设备:
被配置为将时钟信号从所述时钟连接件发送到所述从设备;
被配置为,在第一交互中,将主传输请求信号从所述请求连接件发送到所述从设备;并且,在所述就绪连接件处,从所述从设备接收从传输接受信号,并且,作为直接响应,将二进制数据从所述主到从数据连接件传输到所述从设备;
被配置为,在第二交互中,在所述就绪连接件或从-请求连接件处,接收来自于所述从设备的从传输请求信号,并且,作为响应,将主传输接受信号从所述请求连接件或主-就绪连接件发送到所述从设备;并且在所述从到主数据连接件处,从所述从设备接收二进制数据;并且
在所述第一和第二交互的至少一个中,能够在传输来自于所述主到从数据连接件的二进制数据的同时,在所述从到主数据连接件处接收二进制数据。
CN201280008949.5A 2011-02-15 2012-02-14 串行接口 Active CN103460201B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
GBGB1102594.7A GB201102594D0 (en) 2011-02-15 2011-02-15 Serial interface
GB1102594.7 2011-02-15
PCT/GB2012/050324 WO2012110798A1 (en) 2011-02-15 2012-02-14 Serial interface

Publications (2)

Publication Number Publication Date
CN103460201A CN103460201A (zh) 2013-12-18
CN103460201B true CN103460201B (zh) 2016-03-02

Family

ID=43859421

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201280008949.5A Active CN103460201B (zh) 2011-02-15 2012-02-14 串行接口

Country Status (8)

Country Link
US (1) US9003089B2 (zh)
EP (1) EP2676204B1 (zh)
JP (1) JP6061868B2 (zh)
KR (1) KR101812835B1 (zh)
CN (1) CN103460201B (zh)
GB (2) GB201102594D0 (zh)
TW (1) TWI507880B (zh)
WO (1) WO2012110798A1 (zh)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB201102594D0 (en) 2011-02-15 2011-03-30 Nordic Semiconductor Asa Serial interface
JP6004891B2 (ja) * 2012-10-26 2016-10-12 シチズンホールディングス株式会社 シリアル通信システム
TWI492576B (zh) * 2013-03-11 2015-07-11 Realtek Semiconductor Corp 主從偵測方法以及主從偵測電路
DE102013010277A1 (de) * 2013-06-19 2014-12-24 Giesecke & Devrient Gmbh Verfahren zum Initiieren einer Datenübertragung
KR101481907B1 (ko) 2013-08-02 2015-01-12 주식회사 엘지씨엔에스 데이터 전송 장치
CN106126465B (zh) * 2016-06-21 2017-09-12 广东欧珀移动通信有限公司 一种数据传输方法及装置
CN106326163A (zh) * 2016-08-16 2017-01-11 深圳天珑无线科技有限公司 一种数据传送***及传送方法
EP3502908B1 (en) * 2016-09-29 2022-11-30 Huawei Technologies Co., Ltd. Spi-based data transmission method and device
EP3435245A1 (en) * 2017-07-27 2019-01-30 Nxp B.V. Biometric sensing system and communication method
CN108446243B (zh) * 2018-03-20 2021-11-26 上海奉天电子股份有限公司 一种基于串行外设接口的双向通信方法与***
CN108763140B (zh) * 2018-04-23 2021-02-12 深圳市文鼎创数据科技有限公司 一种双向通信的方法、***及终端设备
CN109344086B (zh) * 2018-11-15 2021-09-17 天津津航计算技术研究所 一种基于sip芯片的软件测试平台
CN111490920A (zh) * 2019-01-29 2020-08-04 杭州海康汽车技术有限公司 一种基于spi的数据传输方法、***及装置
CN110032536A (zh) * 2019-03-28 2019-07-19 北京龙鼎源科技股份有限公司 两系mcu数据同步方法、装置及***
CN110955625A (zh) * 2019-11-22 2020-04-03 上海麦腾物联网技术有限公司 一种基于spi的全双工实时通信的方法及装置
CN111427828B (zh) * 2020-03-02 2022-08-09 深圳震有科技股份有限公司 一种spi流控方法、***、主设备、从设备及存储介质
US11627403B2 (en) * 2020-06-30 2023-04-11 Gn Hearing A/S Hearing device assembly
CN114116559B (zh) * 2022-01-20 2022-05-17 浙江中控技术股份有限公司 一种适用于plc应用的高速总线方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1748364A1 (en) * 2005-07-25 2007-01-31 ORION ELECTRIC CO., Ltd. Electronic apparatus provided with electronic devices for serial communication and serial communication method
CN101552733A (zh) * 2009-05-15 2009-10-07 深圳华为通信技术有限公司 一种基于spi实现数据传输的方法和***

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03194640A (ja) * 1989-12-22 1991-08-26 Mitsubishi Electric Corp 半導体装置
JPH0546549A (ja) * 1991-08-08 1993-02-26 Fujitsu Ten Ltd マイクロコンピユータ間同期式シリアル通信方式
JPH0816512A (ja) * 1994-06-29 1996-01-19 Sony Corp 通信インターフェイス
DE10161669A1 (de) 2001-12-14 2003-06-26 Bosch Gmbh Robert Verfahren und Vorrichtung zum Aktivieren bzw. Deaktivieren verteilter Steuereinheiten
JP2003348127A (ja) 2002-05-28 2003-12-05 Nec Commun Syst Ltd Spi−3インタフェースシステム及びその転送効率向上方法
JP3970786B2 (ja) * 2003-03-05 2007-09-05 株式会社日立製作所 マルチプロセッサシステム
US20050215248A1 (en) * 2004-03-23 2005-09-29 Texas Instruments Incorporated Method and system of communication between a master device and a slave device
US7308516B2 (en) * 2004-04-26 2007-12-11 Atmel Corporation Bi-directional serial interface for communication control
US20060143348A1 (en) * 2004-12-29 2006-06-29 Wilson Matthew T System, method, and apparatus for extended serial peripheral interface
TWI284264B (en) * 2005-05-30 2007-07-21 Tatung Co Bus structure suitable for data exchange of system chip
US7533106B2 (en) * 2005-09-09 2009-05-12 Quickfilter Technologies, Inc. Data structures and circuit for multi-channel data transfers using a serial peripheral interface
JP2008009608A (ja) * 2006-06-28 2008-01-17 Matsushita Electric Ind Co Ltd シリアルインターフェース装置及び双方向シリアルインターフェースシステム並びにシリアル通信方法
TWI378383B (en) * 2008-08-19 2012-12-01 Inventec Corp Data exchanger and data exchange method
US7849229B2 (en) * 2008-11-25 2010-12-07 Spansion Llc SPI addressing beyond 24-bits
GB201102594D0 (en) 2011-02-15 2011-03-30 Nordic Semiconductor Asa Serial interface
US8892800B2 (en) * 2012-02-09 2014-11-18 Intel Corporation Apparatuses for inter-component communication including slave component initiated transaction

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1748364A1 (en) * 2005-07-25 2007-01-31 ORION ELECTRIC CO., Ltd. Electronic apparatus provided with electronic devices for serial communication and serial communication method
CN101552733A (zh) * 2009-05-15 2009-10-07 深圳华为通信技术有限公司 一种基于spi实现数据传输的方法和***

Also Published As

Publication number Publication date
GB201202504D0 (en) 2012-03-28
US9003089B2 (en) 2015-04-07
TWI507880B (zh) 2015-11-11
US20140143461A1 (en) 2014-05-22
GB2488223B (en) 2014-01-01
JP6061868B2 (ja) 2017-01-18
KR101812835B1 (ko) 2017-12-27
KR20140045324A (ko) 2014-04-16
JP2014507035A (ja) 2014-03-20
WO2012110798A1 (en) 2012-08-23
GB2488223A (en) 2012-08-22
EP2676204A1 (en) 2013-12-25
TW201234191A (en) 2012-08-16
GB201102594D0 (en) 2011-03-30
EP2676204B1 (en) 2015-04-29
CN103460201A (zh) 2013-12-18

Similar Documents

Publication Publication Date Title
CN103460201B (zh) 串行接口
CN101911000B (zh) 用于连接电子装置的控制总线
US8281203B2 (en) PCI.Express communication system and communication method thereof
US20150309958A1 (en) Methods and devices for extending usb 3.0-compliant communication
CN106970886A (zh) 使用第二协议的扩展功能结构来控制第一协议的物理链路
JP4966695B2 (ja) マルチマスタのチェーン接続された二線シリアルバス装置及びディジタル状態機械
KR102032862B1 (ko) 멀티미디어 고화질 링크(mhl 3) 디바이스 내의 중재 시그널링
US7484031B2 (en) Bus connection device
CN101005376A (zh) 一种实现业务板和主控板通信的装置和方法
KR20180037783A (ko) 반도체 장치, 반도체 시스템 및 반도체 장치의 동작 방법
US11567893B2 (en) Method and a mirrored serial interface (MSI) for transferring data
US7457898B2 (en) Substitute SATA host for communicating with a SATA device
CN107861893A (zh) I3c验证从设备、主从设备的通信验证***及方法
US8909843B1 (en) Peripheral component interconnect express switch apparatus and method of controlling connection thereof
TW201133243A (en) Arbitrator and arbitrating method applied to system management bus system
CN113792003A (zh) 单总线通信单元、***及方法
JP2011114625A (ja) 通信システムおよび通信装置
JP2011071579A (ja) PCIExpress通信システム
TWI223750B (en) Parallel data bus set, data system and method for device communications
JP2002281034A (ja) 情報転送装置
TWI273426B (en) Dual channel universal serial bus interface and an apparatus with the interface
JP2004341683A (ja) データバス通信システムおよびデータバス通信制御方法
JPS6018038A (ja) デ−タ転送方式
JP2002366508A (ja) データ転送方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant