用于扩展串行外围接口的系统、方法和设备的制作方法

文档序号:6553088阅读:204来源:国知局
专利名称:用于扩展串行外围接口的系统、方法和设备的制作方法
技术领域
本公开涉及芯片间通信,更特别地,涉及用于控制数据流的采用预先消息大小协商的扩展串行外围接口。
背景技术
串行外围接口(SPI)集成电路(IC或者芯片)被用于许多电子设备,尤其是如蜂窝电话的移动设备。诸如蓝牙的无线协议被移动设备采用从而发送诸如数字声音数据的数据信号给在额定10米范围内的其它蓝牙设备。随着电信的空中传输位速率的增加,诸如蜂窝电话的电子设备技术被应用从而利用通信系统的更加宽的带宽。例如,蓝牙“增强数据速率”规范定义3Mbps的空中传输位速率。该3Mbps的速率超出了典型移动设备的通用异步收发器(UART)将数据从主机处理器传输到蓝牙芯片的能力。因此,那些处理信息以便利用蓝牙增强数据速率能力的产品可能要求比UART更快的新的接口。


图1显示按照实施例的电话和头戴式耳机的框图;图2显示按照实施例的微处理器芯片的框图;图3显示按照实施例的组件的功能框图;图4显示用于主从数据传输的消息序列图;图5显示用于从主数据传输的消息序列图。
具体实施例方式
公开了一种用于在第一处理器和第二处理器之间进行通信的系统、方法和设备。主模块和从模块分别与第一处理器和第二处理器进行通信。在示范性的应用中,第一处理器可以是适用于蜂窝电话的微处理器,而第二处理器可以是适用于,例如,蓝牙无线技术的其它处理器。在下文中,主模块和从模块可以分别被称作主和从。
提供目前的公开以用可行的方式进一步解释制造和使用根据本发明的各种实施例的最佳模式。本公开被提供,以便进一步加强理解和明白本发明的原理以及其所具有的优点,而不是以任意方式来限制本发明。本发明由所附的权利要求所唯一定义,包括这个申请的任何修改以及被公布的这些权利要求的任何等效替代。
需要进一步理解的是,关系术语的使用,如果有的话,诸如第一和第二、顶部和底部以及类似物,仅被用于唯一地区分一个和另一个实体或者动作,而不必要求或者暗示在这些实体或动作之间的任何实际的这样的关系或者顺序。发明的许多功能和原理通过使用软件程序或者指令以及诸如专用IC的集成电路(IC)来实现。需要注意的是,尽管由于,例如,可用时间,目前的技术和出于经济上的考虑,可能造成巨大的努力和激发许多设计选择,然而当由这里所公开的概念和原理所引导的时候,普通技术人员将能够通过最小的试验就容易地生成这样的软件指令和程序以及IC。因此,为了简明扼要和最小化使按照本发明的原理和概念模糊的风险,对于这样的软件和IC的讨论,如果可能的话,将被限制在针对优选实施例中的原理和概念的本质上。
在本公开中,在主模块和从模块之间的“扩展”串行外围接口(SPI),下文中被称作“ESPI”,将被描述。在主模块和从模块之间的操作包括以下内容进出从模块中的主时钟数字数据;提供从模块向主模块发布中断的能力;提供给主从之间的预先流控制握手之用的特定消息格式(从模块,在下面的例子中,与采用蓝牙协议的其它设备进行交互)。例如,修改SPI芯片技术,这里所公开的系统、方法和设备提供给ESPI芯片与例如采用蓝牙协议的芯片一起被使用的能力。
在ESPI协议中,ESPI主模块在CS线上提供芯片选择信号,在CLK线上的时钟信号,以及在主机输出/从机输入(MOSI)数据线上提供数据至ESPI从模块。握手提供基于蓝牙协议传输的数据被从微芯片处理的能力。正如下面将要更加详细显示的那样,这个例子中的数据包括握手数据和数字数据。数字数据可以是,例如,数字声音数据。它也可以包括其它,非声音的数字数据。ESPI从模块,由时钟信号所驱动,在主机输入/从机输出(MISO)数据线上提供数据给ESPI主模块。作为握手的一部分,在IRQ线上从ESPI从模块到ESPI主模块提供中断信号,使得ESPI从模块可以异步通知ESPI主模块,该ESPI从模块具有它想要发送的数据。(标称)CS线能够被使用在与ESPI从模块的握手中,因此CS线可以被程序所控制,而不是被SPI的硬件所控制。ESPI协议中的这五个信号和线(CS,CLK,MOSI和IRQ)可以结合图1-5被更加充分地讨论。
单个ESPI主芯片可以驱动不止一个ESPI从芯片。在配置不止一个从模块的时候,主模块向所要的从模块提供芯片选择信号,并且可以从每个从模块接收中断信号。
ESPI协议使得主模块和/或设备与作为智能从设备的从设备之间进行通信。智能从设备不完全依赖于主模块,且它具有自己的处理器,可能忙于其它的任务而不能对主设备的召唤做出立即的响应。这里所描述的ESPI协议允许ESPI从模块可以阻止主模块发送数据直到从模块准备好接受数据。同样地,主模块可以阻止从模块发送数据直到主模块准备好接受数据。而且,ESPI协议以及前面所描述的五个ESPI信号,结合了数据传输、流控制和低功率操作的功能。(就低功率操作而言,每个设备,主模块或者从模块,能够独立地进入各自的低功率状态,并且当其它设备想通信的时候由其它设备唤醒)。
正如下面将要被详细讨论的,ESPI协议提供,通过在传输之前对传输中的数据量进行协商来进行流控制。在协商中,双方(主模块和从模块)就传输的长度达成一致意见。为了传输给从模块,双方同意的数目是主模块想要发送的且从模块能够接受的最小量。为了自从模块传输,达成一致的数目是从模块想要发送的数目(因为主模块总是能够控制时钟去停止来自从模块的数据发送直到它能够接受从模块想要发送的全部)。主模块不必接受在一个连续流中的全部从数据。更确切地,主模块能够对一些来自从模块的数据计时,移动那些数据到其它存储器,然后对来自从模块的更多的数据计时。在这里所公开的实施例中,如果双方都同意,主或者从模块能够潜在地在单一事务中发送65535个字节的数据。事务的大小是可变的,范围从1字节到65535字节。在另一个实施例中,可以提供不同的最大事务大小。
一般地,对于主模块和从模块之间的每个事务(例如,每次数据传输),在这里所公开的实施例中,主模块为三个中断服务,从模块为两个中断服务(见下面的图4和图5)。在ESPI方案中,从主模块到从模块的65535字节的传输将中断主模块处理器三次。其它配置,或者其它实施例,可以提供不同数目的中断。
为了进一步地公开,采用蓝牙设备的示范性使用将在下面被讨论,但是这里所公开的系统、方法和设备提供在主机控制器和客户控制器之间的通用的通信。
现在参照图1,电话和头戴式耳机的框图由100表示。虽然这里的公开涉及蜂窝电话,但是任何使用这里所描述的蜂窝电话的电子设备都落入这里公开的范围。电话102可以包括与智能从模块进行通信的微处理器芯片104,该智能从模块包含诸如蓝牙芯片的智能从模块106。电话102也可以包括用于和电话服务提供者进行无线连接的天线108。并且,电话102可以包括天线110以便支持在电话102和头戴式耳机114之间的无线蓝牙连接112。在线路116、118和122上的信号可以从微处理器芯片104传递到智能从模块106。在线路120和124上的信号可以从智能从模块106传递到微处理器芯片104。在线路116、118、120、122和124上的信号将在下面结合图2-5被详细地讨论。
图2显示了微处理器芯片104的框图。微处理器芯片提供在处理核心中的计算。它接受输入数据并且通过它的外围设备组(这里是UART、USB和MQSPI)提供输出数据。微处理器芯片104可以是单一的微处理器芯片。微处理器芯片104可以包括微处理器核心202。微处理器核心202可以传递控制和数据信号209到UART外设206和USB外设208,或者传递来自这两个外设的控制和数据信号。可选地,不同协议的外设也可以在这里被预期。
微处理器芯片104也包括扩展串行外围接口ESPI主模块210。正如在前面所简略描述的那样,ESPI提供在主模块和从模块之间的接口。从模块不被显示在图2中,但是主模块和从模块之间的关系被显示在图3中。
再参照图2,微处理器核心202可以传递控制和数据信号211到ESPI主模块210,并且类似地,自ESPI主模块210接收这样的信号。微处理器核心202也可以自ESPI主模块210接收处理器中断信号306(见图3)。ESPI主模块210可以包括多队列串行外围接口(MQSPI)212,它是特定类型的SPI四脚芯片器件。在这个例子中,MQSPI功能被更改。如所示,引脚218,MQSPI芯片的原始芯片选择(CS)引脚,被留下没有被连接。增加两个额外的通用输入/输出(GPIO)214引脚116和124。这里一共有5个可用引脚。GPIO引脚116用作芯片选择(CS),取代MQSPI模块212的未连接的芯片选择输出引脚218的功能。GPIO引脚116可以由微处理器核心202所驱动并且通过微处理器核心提供对芯片选择功能的控制。GPIO引脚124用作IRQ输入连接,将来自ESPI从模块的中断信号传递到微处理器核心202上。
如所示,ESPI主模块210也包括CLK118线路,主机输入/从机输出(MISO)120线路,以及主机输出/从机输入(MOSI)122线路。ESPI主模块210在CLK118线路上提供时钟信号给从模块以便从模块读取MOSI线路并且传输线路上的位给它的存储器缓冲器。因此,在每个时钟信号脉冲内,在MOSI线路122上由主模块所提供的数据位被传输给ESPI从模块310的从存储器缓冲器302(见图3)。同时,在MISO线路120上由从模块所提供的数据位被传输给ESPI主模块210中的存储器缓冲器308。通过这种方式,ESPI主模块210对进出从模块的数字数据计时。正如下面将进一步描述的,这5个信号(CS、CLK、MOSI、MISO和IRQ)执行ESPI流控制协议。
图3解释通过ESPI从模块和/或者设备310与主模块104进行通信的智能从模块106。这里,整个从模块方描绘了包括自身从处理器312的智能从模块。数据和控制信号314在ESPI从模块310和从处理器312之间传递。ESPI从模块310也可以提供处理器中断316给处理器312。由于从模块是智能从模块,所以双方之间的通信包括中断,并且由此,双方之间的预先协商允许被控制的数据流。
图3显示按照本发明实施例的包括5个引脚的组件的功能框图。如图2所描绘的,主模块104包括微处理器核心202和ESPI主模块210。数据和控制信号211在微处理器核心202和ESPI主模块210之间传递。ESPI主模块210也可以提供处理器中断信号306。
如所示,ESPI主模块210具有存储器缓冲器308。缓冲器308可能持有将被发送到智能从模块106的数据。可选地,缓冲器308可以或者额外地,持有自智能从模块106所接收的并且等待传输到微处理器核心202的数据。自ESPI主模块210到智能从模块106的数据传输处于微处理器核心202的控制之下,如同自ESPI主模块210到微处理器核心202的数据传输。
ESPI从模块310包括串行外围接口(SPI),它与ESPI主模块210的3个原引脚进行通信。同样,ESPI从模块310包括与ESPI主模块210之上的GPIO引脚116和124进行通信的通用输入/输出引脚。ESPI从模块310也可以包括存储器缓冲器302。缓冲器302可以持有将被发送到ESPI主模块210的数据。缓冲器302可选地,或者另外,持有从ESPI主模块210接收到的并且等待传输到处理器312核心的数据。如前面所提到的,自ESPI主模块210到智能从模块106的数据传输处于微处理器核心202的控制之下。然而,自ESPI从模块310到智能从处理器312的数据传输处于处理器312的控制之下。处理器312可以传递控制和数据信号320到一个或者多个外围设备,或者传递来自一个或者多个外围设备的控制和数据信号,外围设备可以是,例如,传送和接收数字声音数据或者其它数字数据的蓝牙无线电设备322。
在ESPI主模块210和ESPI从模块310之间的通信现在将被详细地描述。如前面所讨论的,在ESPI协议中,5个信号和线路提供主模块和从模块之间的通信。如图3中所示,这5个信号为CLK118、GP输出116、MOSI122、MISO120和GP输入124。GP输出116用作芯片选择信号;GP输入124提供IRQ输入连接。
当准备ESPI主模块210以用于写数据到智能ESPI从模块310,或者从它读数据的时候,主模块在GP输出116上断言芯片选择信号。ESPI主模块210在CLK118上运行时钟并且在每个时钟周期内在MOSI122上提供数据位(并且同时在MISO120上读取数据位)。GP输入124线路,它是对标准SPI接口上的四个线路的增加,具有两个功能。首先,它允许ESPI从模块310去通知ESPI主模块210,从模块有数据需要通过发送中断(IRQ)信号而被发送。其次,它允许从模块106与主模块104握手以显示它能够接收数据。
如下面所详细描述地,ESPI协议提供,主模块104和从模块106隐含地在实际传输之前就数据传输的数目达成一致意见。因为双方同意,因此没有必要进行明确的硬件流控制,因为双方都指示了它们准备接受的数据数目。CS信号(在GP输出116上)实际上是对ESPI从模块310的唤醒信号,并且中断信号IRQ(在GP输入124上)是对ESPI主模块210的唤醒信号。采用这里所描述的配置,流控制由协商所预先配置。因此,不具有明确的流控制线路。下面将进一步详细地描述,一旦事务发生,它就进行到完成并且是自给式的。
ESPI协议基于下面的假设,即在主模块104和从模块106之间的通信链接是可靠的,没有位错误或者丢失的字节。因此,协议没有包括错误检测和校正机制。协议进一步基于下面的假设,即双方以整数个字节的方式传递数据。没有包括这些假设的替换实施例也落入本公开的范围。
在主模块104和从模块106之间的数据传输中的事件序列被显示在图4和图5中。图4显示了主模块104有数据发送到从模块106的情况下的消息序列图。图5显示从模块106有数据发送到主模块104的情况下的消息序列图。图4和5关注与ESPI主模块210交互的主微处理器核心202;这两个图都没有显示在ESPI从模块310和从微处理器312之间的数据传输的细节。
现在参照图4,消息序列图显示在微处理器核心202(主微处理器)和ESPI主模块210之间,在ESPI主模块210和ESPI从模块310之间,以及在ESPI从模块310和处理器312(从微处理器)之间传递的消息。在402上,在主模块104和从模块106之间的握手通过在主模块和从模块之间传递的初始消息组而开始。正如前面所讨论的,通用(GP)输出116线路可以被用于提供片选功能。在410上,微处理器核心202提供对于ESPI主模块210的断言GPIO的控制,ESPI主模块反过来在412上断言GP输出信号从而提供片选功能给ESPI从模块310。然后,ESPI从模块310提供中断信号414给处理器312,处理器响应416以促成ESPI从模块310去响应418ESPI主模块,ESPI主模块反过来返回中断420给微处理器核心202。
在404上,用于预先流控制的协商发生在接下来的消息组中。握手的完成是通过在主模块104和从模块106之间以特定格式传递消息来实现的。
协议中的消息被列在表1中,“ESPI协议消息”。在这个表中,例如“MSBx”是承载将要被传输的字节数目的两个字节值中的最高有效字节。同样地,例如“LSBx”是两个字节值中的最低有效字节。符号“0xXX”指示任意的值。发送方不必设置它们,并且将被接收方所忽略。在实际中,它们可以被设置为零。
表1ESPI协议消息

类型1和3消息是“主模块消息”,那即是,它们被从主模块发送到从模块。类型2消息是“从模块消息”,那即是,它们被从从模块发送到主模块。
在类型1消息中,MS(它代表数量“主模块发送”)是有两个字节大小的整数,范围从0到65535。类似地,在类型2消息中的SA(“从模块接受”)和SS(“从模块发送”)是由每对字节所限定的整数,并且也能够具有0到65535之间的任何值。
需要注意的是,类型1和2消息的更大的尺寸提供对MS、SA和SS的更大值的限定。例如,利用7个而不是5个字节可以提供三个字节所限定的MS、SA和SS值,留下一个可用字节规定消息的类型。对于每个采用三个字节,MS、SA和SS每个的范围从值0到16777215。
如图4所示,在422上,微处理器核心202准备5个字节的类型1消息,将它写到ESPI主模块210中,并且引导主模块开始传输这5个字节。这个消息在来自主模块且载有数目MS的MSBx和LSBx字节中告诉从模块,主模块想要发送多少字节的数据给该从模块。MS是从主模块传输到从模块的数据传输的备选大小。数据传输的实际大小直到与从模块的协商完成之后才被设置。然后,ESPI主模块210对于在MOSI线路122上从主模块到从模块的5个字节进行计时。同时,5个字节被读入主模块中用作MISO120线路上的类型2消息,并且被存储在ESPI主模块的存储器缓冲器308中。当5个字节的传输被完成以后,ESPI主模块210发出中断426给微处理器核心202,它通过从存储器缓冲器308中读出5个字节的类型2消息而发出响应428。来自从模块的MSBy和LSBy指示从模块能够接受多少个字节,SA。SA因此也是自主模块传输到从模块的数据备选大小。如果SA具有零值,那么从模块不能够接受来自主模块的任何字节,并且主模块退出写序列以便稍晚的时候再试一次。来自从模块的MSBz和LSBz字节载有数目SS,它们不被微处理器核心202考虑并且不必具有由从模块所设置的特定值。
如果SA具有比0大的值,那么对于数据传输大小的协商被完成,并且数据传输406发生。在数据传输中的字节数目是两个数目MS和SA中的最小值。为了产生传输406,在430上,微处理器核心202发送主-到-从数据给ESPI主模块210的存储器缓冲器308,并且引导主模块去开始该传输。在432上,主模块在MOSI线路122上从存储器缓冲器输出主-到-从数据到从模块。这些数据被存储进ESPI从模块的存储器缓冲器302中。从主模块开始传输数据的同时,等量的从-到-主数据自从模块被输入。来自从模块的数据被忽略,因此它不必具有任何具体的值(例如,每个字节可以被设置为0)。当所有的数据被传输以后,ESPI从模块310发送中断434给处理器312从而通知数据传输已经完成。处理器312通过自ESPI从模块的存储器缓冲器302读出数据而作出响应436。ESPI主模块210发送中断438给微处理器核心202,它通知那些被协商的数据传输事务已经被完成。
在主模块和从模块之间的交互随着最后一组动作408而结束。在436上,从微处理器312读数据以后,处理器312引导444 ESPI从模块310,以对于GPIO引脚124上的IRQ解除断言,并且ESPI从模块310在446上解除断言IRQ。独立于444和446,在440上,微处理器核心202引导ESPI主模块210,以对于GP输出116信号解除断言,在442撤消选定ESPI从模块310。或者,在444和446上的IRQ的断言解除能够被442上的GPIO的断言解除所促发。然而,这将造成对从微处理器312的额外的中断。在446上的IRQ124的断言解除和在442上的GPIO的断言解除完成在主模块104和从模块106之间的事务。需要注意的是,如果由主模块所传输的数据大于所允许的最大尺寸(例如,大于65535字节),那么主模块必须将它分割成可允许的数据传输大小并且多次履行完整的交换402、404、406和408。
图5显示消息序列图,该图针对从模块106具有要发送到到主模块104的数据的情况。现在参照图5,在主模块104和从模块106之间的握手随着在502上的初始动作组而开始。在图5的情形下,从模块106将具有要发送到主模块104的从-到-主数据(在ESPI从模块310的存储器缓冲器302中)。处理器312引导510 ESPI从模块310,从而提供中断信号512给ESPI主模块210,然后它在514发送中断给微处理器核心202。微处理器核心202通过引导主模块去断言GP输出116线路作为芯片选择来进行响应516,并且ESPI从模块310反过来发送520中断给处理器312。
接着,用于预先流控制的协商随着接下来的一组消息而发生,如在504所示。在522上,微处理器核心202准备5个字节的类型3的主模块消息,将它写入ESPI主模块210,并且引导ESPI主模块210从而开始5个字节的传输。类型3消息是向从模块106确认主模块104能够接受数据。同时,类型2从消息在ESPI从模块310中是可用的以便传输到ESPI主模块210。这种类型2消息在来自从模块的载有数目SS的MSBz和LSBz字节中,告诉ESPI从模块310将要发送多少字节的从-到-主数据到ESPI主模块210。(正如前面所讨论的,在类型2消息中包括更多字节提供了更大的数据传输尺寸。)然后,ESPI主模块210对在MOSI线路122上自ESPI主模块210到ESPI从模块310的5个字节进行计时524。同时,这5个字节作为MOSI线路120上的类型2消息而被读入ESPI主模块210,并且被存储在ESPI主模块的存储器缓冲器308中。当5个字节的传输已经完成以后,ESPI主模块210发出中断526给微处理器核心202,它在528通过从存储器缓冲器308中读出5个字节的类型2从消息而做出响应。
接下来,进行从-到-主数据传输506。在数据传输中的字节数目是数目SS。为了启动传输,微处理器核心202引导530 ESPI主模块210从而自从模块310计时输入532SS个数据字节到ESPI主模块210的存储器缓冲器308中。自ESPI从模块310传输从-到-主数据的同时,相同数目的主-到-从数据自ESPI主模块210被计时输入。来自ESPI主模块210的数据被忽略,因此其不必有任何具体的值(例如,这些字节可以全部被设置为0)。
在传输期间,当必要的时候,ESPI主模块210可以停止计时输入从-到-主数据,以在它的接收缓冲器满了的情况下,将数据自它的接收缓冲器传输到其它内部缓冲器。(要注意的是,这与主模块104到从模块106的事务不同,其中ESPI主模块210在不停止它的时钟的情况下,能够将协商确定的一定数目的数据流式传输到ESPI从模块310。)因为ESPI主模块210控制时钟,因此它不必通知ESPI从模块310它能够接受的字节数目(如从模块通知主模块),因为主模块能够(最终)接受所有的字节。要注意的是,当从模块想要发送的数据超出ESPI主模块存储器缓冲器308所能容纳的数目时,主模块必须重复从-到-主数据传输506的动作直到如在504协商的主模块接收所有从模块的数据。
当所有的数据被传输,ESPI主模块210发送中断534给微处理器核心202,通知所协商的数据传输已经完成。微处理器核心202通过自ESPI主模块的存储器缓冲器308读出数据来做出响应536。要注意的是,如果由从模块所传输的数据大于所允许的最大数目(例如,大于65535字节),那么从模块必须将其分割为可以接受的数据传输尺寸并且多次履行完整的交换502、504、506和508。
在主模块和从模块之间的交互随着最后一组动作508而结束。在538上,微处理器核心202引导ESPI主模块210解除断言540GP输出信号,撤消选择从模块,这促成ESPI从模块310去发送中断542给处理器312。处理器312反过来引导544ESPI从模块310对于GPIO引脚124上的IRQ解除断言。在546上的IRQ信号的断言解除完成了在主模块104和从模块106之间的事务。
可能的是主模块和从模块具有要发送的数据,并且同时警告远程设备这个事实。在这种情况下,主模块总是赢得这个竞争。它将首先执行这个事务。主模块将知道它发送给从模块的数据数目,因为从模块已经在它的响应中提供了那个值(SA)。从模块将了解到它具有的输出数据没有被主模块接受,因为主模块发送类型1消息,而不是类型3消息。
本公开旨在解释如何形成和使用与这项技术一致的各种实施例,而不是限制其中真实的,预期的和公正的范围和精神。前面的描述不是排它的或是被限制为所公开的精确形式。根据前述的教导,可以做出修改或者变化。选择和描述实施例是为了最好地解释所描述的技术原理和它的实际应用,并且使得本领域中的普通技术人员去利用在各种实施例中的技术以及通过各种修改使之适宜所需要的特定用途。当在公正的、合法的和公平合理地赋予的范围之内被解释的时候,所有的这些修改和变化都落入由所附的权利要求及其所有等效替代确定的本发明的范围之内,这些权利要求可能在本专利申请的审批期间修改。
权利要求
1.一种用于串行芯片间通信的系统,包括主模块;从模块;在主模块和从模块之间的为了通过主模块控制从模块的芯片选择线路;在主模块和从模块之间的为了通过主模块控制从模块的时钟线路;以及在主模块和从模块之间的为从模块提供能力以中断主模块的中断线路。
2.如权利要求1所述的系统,其中主-到-从数据和从-到-主数据被处理,进一步包括在主模块和从模块之间的主机输出/从机输入线路;以及在主模块和从模块之间的主机输入/从机输出线路;其中,在主机输出/从机输入线路上的主-到-从数据流和在主机输入/从机输出线路上的从-到-主数据流通过流控制协议而被协商。
3.如权利要求2所述的系统,其中流控制协议包括自主模块到从模块的主消息,并且该主消息包括指定消息类型的字节。
4.如权利要求3所述的系统,其中流控制协议进一步包括自从模块到主模块的从消息,并且该从消息包括指定消息类型的字节。
5.如权利要求4所述的系统,其中主消息进一步包括至少一个指定主-到-从数据的第一备选大小的字节。
6.如权利要求5所述的系统,其中从消息进一步包括至少一个指定主-到-从数据的第二备选大小的字节;以及主-到-从数据的大小是第一备选大小和第二备选大小中的最小值。
7.如权利要求4所述的系统,其中从消息包括至少一个指定从-到-主数据中的字节数目的字节。
8.一种设备,包括具有用于CS、CLK、MOSI、MISO和IRQ信号的连接的主设备;具有用于CS、CLK、MOSI、MISO和IRQ信号的连接的从设备;连接主CS连接和从CS连接的控制线路;连接主CLK连接和从CLK连接的控制线路;连接主IRQ连接和从IRQ连接的控制线路;连接主MOSI连接和从MOSI连接的数据线路;连接主MISO连接和从MISO连接的数据线路;其中CS连接由主设备使用从而去启动从设备;CLK连接由主设备所使用从而对主设备和从设备之间的数据流进行计时;IRQ连接由从设备所使用从而去提醒主设备,从设备有数据要发送给主设备;IRQ连接进一步被从设备所使用从而去提醒主设备,从设备准备好了自主设备接受数据;MOSI连接被使用从而自主设备传递数据到从设备;并且MISO连接被使用从而自从设备传递数据到主设备。
9.如权利要求8所述的设备,其中CS、CLK、MOSI、MISO和IRQ信号包括流控制协议。
10.如权利要求8所述的设备,其中所述设备是蜂窝电话。
全文摘要
在具有计时能力的扩展串行外围接口(ESPI)主(210)芯片和ESPI从(310)芯片之间进行芯片间通信的系统、方法和设备被公开。所述方法包括主芯片选择从芯片(402),主模块自主芯片计时输入数据到从芯片中,并且同时自从芯片机时输入数据到主芯片(404)中,接着处理时钟引入的数据,从而协商在主芯片和从芯片之间的进一步的数据传输(406)。由主芯片所做的从芯片选择也可以因为响应主芯片自从芯片(502)接收到的中断而发生,然后主芯片在两个方向(504)上计时数据从而进一步协商在主芯片和从芯片之间的数据传输(506)。
文档编号G06F13/42GK101061468SQ200580040042
公开日2007年10月24日 申请日期2005年11月29日 优先权日2004年12月29日
发明者马修·T·威尔逊, 斯蒂芬·R·S·罗斯 申请人:摩托罗拉公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1