一种提高串行外围设备接口传输效率的实现方法转让专利

申请号 : CN200910243487.5

文献号 : CN102110070B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 田勇张帆

申请人 : 北京中电华大电子设计有限责任公司

摘要 :

本发明用于涉及提高串行外围设备接口(SPI,Serial Peripheral Interface)数据传输效率的一种实现方法。其结构为:它至少含有一个控制设备C(用以对设备A进行操作控制)及一个设备A(SPI),以及设备A用以与外围设备B进行数据通讯的信号——至少包含一条双向SCK时钟信号、一条双向MISO数据信号和一条双向MOSI数据信号。本方法包括:根据设备B的特性,通过控制设备C对设备A实现不同配置方式。本发明实现基于SPI接口数据传输时的高速数据搬移,方法简单,没有增加额外的成本,降低系统设计投入,提高了传输效率。

权利要求 :

1.一种用于提高串行外围设备接口数据传输效率的方法,传输结构含有一个控制设备及一个设备A,以及设备A用以与外围设备B进行数据通讯的双向SCK时钟信号、双向MISO数据信号和双向MOSI数据信号,其特征在于控制设备根据外围设备B的特性及应用,对设备A进行配置,从而实现不同情况的数据传输,步骤如下:(1)控制设备通过与设备A的接口将设备A配置为主设备模式或从设备模式;

(2)在设备A被配置为主设备模式或从设备模式后,双向SCK时钟信号被设定为单向信号,双向MISO数据信号被设定为单向信号,双向MOSI数据信号被设定为单向信号;

(3)设备A通过MISO和MOSI两条数据信号通道同时接收设备B发送的数据或发送数据给设备B。

2.根据权利要求1所述的一种用于提高串行外围设备接口数据传输效率的方法,其特征在于,当设备A作为主设备使用,外围设备B作为从设备使用时,设备A可通过MISO和MOSI两条数据信号通道同时接收设备B发送的数据。

3.根据权利要求1所述的一种用于提高串行外围设备接口数据传输效率的方法,其特征在于,当设备A作为从设备使用,外围设备B作为主设备使用时,设备A可通过MISO和MOSI两条数据信号通道同时发送数据给设备B。

说明书 :

一种提高串行外围设备接口传输效率的实现方法

技术领域

[0001] 一种实现提高串行外围设备接口传输效率的方法涉及数据通讯领域,具体来说是涉及一种提高SPI数据传输的实现方法。

背景技术

[0002] 随着IC技术的不断发展,各种设备之间的通讯方式也多种多样,手段也越来越多。其中SPI(Serial Peripheral Interface,串行外围设备接口)总线技术是一种用于设备之间进行数据传输的串行通讯接口技术。它可以提供较高的通讯速率,尤其适用于对外设、器件的配置与控制。
[0003] 通常来说,SPI接口是以主从方式工作的,这种模式通常有一个主器件和一个或多个从器件,之间接口包括4种信号:
[0004] (1)串行数据信号1(主器件数据输出,从器件数据输入);
[0005] (2)串行数据信号2(主器件数据输入,从器件数据输出);
[0006] (3)时钟信号(由主器件产生);
[0007] (4)从器件使能信号(由主器件控制)。
[0008] SPI数据传输过程是由主器件通过从器件使能信号和时钟信号来达到控制从器件的目的。其中主器件通过从器件使能信号来选中某个或多个从器件,在数据传输过程中,主器件发出有效的时钟信号给从器件,主/从器件在有效的时钟状态时通过串行数据信号1和串行数据信号2来相互进行数据的收发,从而实现主/从器件之间的数据通讯。
[0009] 但是,由于外围设备的特性多种多样,在一些情况下主设备只会接收从设备发出的数据,如果还是采用SPI的通常模式来传输,那么SPI接口的串行数据信号1则会一直处于空闲,从而被浪费。基于以上考虑,本发明采用一种比较新颖的方法,在上述情况下,同时使用两条串行数据信号进行同向传输,这样可由一条数据通道变为两条数据通道,从而大大提高数据的传输效率。

发明内容

[0010] 针对SPI接口在某些应用过程中,数据传输效率较低,并且串行数据信号资源被浪费的情况,本发明提供的方法可以很好的解决这一问题。本发明能够在解决问题的基础上,在没有增加额外资源的情况下使主/从设备之间的数据传输效率大大提高。
[0011] 本发明公开了一种提高串行外围设备接口数据传输效率的方法,参照图1的示意图。本发明所述方法涉及到的结构包含至少一个控制设备C、至少一个设备A(SPI接口),以及支持SPI接口通讯的信号:至少含有一条双向SCK时钟信号、一条双向MISO数据信号和一条双向MOSI数据信号。所述方法支持控制设备C实现对设备A进行两种配置方式:配置方式1为设备A被配置为主设备使用,配置方式2为设备A被配置为从设备使用。
[0012] 所述的控制设备C需要能够对设备A进行控制及操作。
[0013] 所述的设备A需要能够支持控制设备C对其进行相应的控制以及支持至少一条双向的SCK时钟信号接口、一条双向的MISO数据信号接口和一条双向的MOSI数据信号接口。
[0014] 所述的配置方式1是指通过控制设备C将设备A配置为主设备,其接口信号:双向的SCK时钟信号被设定为单向输出信号、双向的MISO数据信号被设定为单向输入信号、双向的MOSI数据信号被设定为单向输入信号。
[0015] 所述的配置方式2是指通过控制设备C将设备A配置为从设备,其接口信号:双向的SCK时钟信号被设定为单向输入信号、双向的MISO数据信号被设定为单向输出信号、双向的MOSI数据信号被设定为单向输出信号。
[0016] 本发明具有以下优点:
[0017] (1)本发明在实现对SPI接口数据传输的同时又不花费额外的资源。
[0018] (2)本发明在实现对SPI接口数据传输的同时又大大提高数据传输的效率。
[0019] (3)本发明采用的数据传输方式,没有增加设计的复杂度,设计成本很低。

附图说明

[0020] 图1是本方法涉及的结构示意图
[0021] 图2是本方法使用中配置方式一情况下的结构示意图
[0022] 图3是本方法使用中配置方式二情况下的结构示意图
[0023] 图4和图5是本方法在数据传输过程中的数据格式时序定义示意图具体实施方式
[0024] 下面参照附图,给出具体的在不同配置方式下的实施描述。
[0025] 在使用本方法时,针对外围设备特性及应用方式的不同情况有两种配置方式可供选择:
[0026] 配置方式一:当设备B在系统中作为从设备使用,那么可通过控制设备C对设备A(SPI)进行操作,将设备A配置为主设备。(参照图2的示意图)
[0027] 具体操作如下:根据使用要求,可将设备A与设备B之间的连接关系参照图2的方式连接。通过控制设备C将设备A配置为主设备方式,使得双向的SCK时钟信号被设定为单向输出信号、双向的MISO数据信号被设定为单向输入信号、双向的MOSI数据信号被设定为单向输入信号。主设备A通过SCK时钟信号实现对从设备B的传输控制,传输过程中,通过两条数据信号通道MISO和MOSI同时进行由从设备B向主设备A的数据传送。当需要进行数据传输时,主设备A产生有效的SCK时钟信号,从设备B根据有效的SCK时钟信号开始通过MISO信号和MOSI信号同时进行数据的传送,主设备A同时通过MISO和MOSI进行数据的接收。由于控制设备C对设备A进行不同的传输配置会产生不同状态的SCK时钟信号方式,不同情况下的传送数据格式定义可参照图4和图5的示意图。
[0028] 配置方式二:当设备B在系统中作为主设备使用,那么可通过控制设备C对设备A(SPI)进行操作,将设备A配置为从设备。(参照图3的示意图)
[0029] 具体操作如下:根据使用要求,可将设备A与设备B之间的连接关系参照图3的方式连接。通过控制设备C将设备A配置为从设备方式,使得双向的SCK时钟信号被设定为单向输入信号、双向的MISO数据信号被设定为单向输出信号、双向的MOSI数据信号被设定为单向输出信号。此时的主设备B通过发出的SCK时钟信号实现对从设备A的传输控制,传输过程中,通过两条数据信号通道MISO和MOSI同时进行由从设备A向主设备B进行数据传送。当需要进行数据传输时,主设备B产生有效的SCK时钟信号,从设备A根据有效的SCK时钟信号通过MISO信号和MOSI信号同时进行数据的传送,主设备B同时通过MISO和MOSI进行数据的接收。由于从设备A会接收到不同状态的SCK时钟信号方式,不同情况下的传送数据格式定义可参照图4和图5的示意图。