首页> 中国专利> SPI接口以及经由SPI接口的串行通信方法

SPI接口以及经由SPI接口的串行通信方法

摘要

本发明公开了SPI接口以及经由SPI接口的串行通信方法。涉及使用串行外设接口(SPI)协议与外围设备进行的串行通信,特别是,涉及针对嘈杂环境的SPI接口以及在嘈杂环境中经由SPI接口的串行通信方法。根据本发明方面,提供了SPI接口,该SPI接口包括:多个同步器,被配置为接收多个SPI信号和内部时钟信号并且使用内部时钟信号同步所接收SPI信号;以及SPI协议处理机,被配置为接收经同步的SPI信号和内部时钟信号并且根据SPI协议检测和评估经同步的SPI信号中至少一个SPI信号的信号跃迁。

著录项

  • 公开/公告号CN103544129A

    专利类型发明专利

  • 公开/公告日2014-01-29

    原文格式PDF

  • 申请/专利权人 英飞凌科技股份有限公司;

    申请/专利号CN201310287010.3

  • 发明设计人 托马索·巴奇加卢波;

    申请日2013-07-09

  • 分类号G06F13/42;

  • 代理机构北京康信知识产权代理有限责任公司;

  • 代理人余刚

  • 地址 德国瑙伊比贝尔格市

  • 入库时间 2024-02-19 21:57:24

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2016-12-07

    授权

    授权

  • 2014-03-12

    实质审查的生效 IPC(主分类):G06F13/42 申请日:20130709

    实质审查的生效

  • 2014-01-29

    公开

    公开

说明书

技术领域

本发明涉及使用串行外设接口(SPI)协议与外围设备进行的串行通 信,特别是,涉及针对嘈杂环境的SPI接口以及在嘈杂环境中经由SPI接 口的串行通信方法。

背景技术

串行外设接口(SPI)协议是广泛用于集成电路(IC)之间进行数据 传输的协议,特别是主机处理器(也称为SPI主机)与一个或多个外围设 备(也称为SPI从机)之间。SPI协议规定四个信号:

CS:芯片选择

SCLK:移位时钟或者串行时钟

SDI:移位数据输入或者串行数据输入

SDO:移位数据输出或者串行数据输出

然而,应当理解,替代命名惯例也广泛使用。

SPI协议是同步协议,其需要用于正确操作的定义时序。如果SPI设 备在嘈杂环境中工作(例如,具有大开关电流/电压的功率转换器),那么 在SPI信号上可能出现毛刺(glitch,电子脉冲),这会在SPI设备上引起 时序违规(timing violation)。接收了时序违规的常规SPI设备的行为是未 知的。它取决于实现方式(使用模拟滤波器等),但是在最坏情况下,接 口的所有触发器变为亚稳态(即,触发器处于“低”与“高”状态之间的 不稳定状态中,并且在不确定持续时间之后会变为稳定状态“低”或者“高” 中一个)并且可引起产生严重后果的随机行为。

然而,在嘈杂环境中,由于随机噪声事件的不可预测性,所以无法保 证正确时序。在常规SPI设备中,模拟滤波器通常用于抑制时钟信号上的 毛刺,然而模拟滤波器的使用也无法完全去除由于噪声诱发事件导致的时 序违规:例如,模拟滤波器可通过太小的时钟脉冲,这导致SPI触发器变 为亚稳态。

因此,例如需要以下串行外设接口,其不易受到由于例如嘈杂SPI 信号所导致的时序违规的影响,并因此适合嘈杂环境中的应用,并且需要 以下经由SPI接口的串行通信方法,其不易受到时序违规影响因此适合嘈 杂环境中的应用。

发明内容

根据本发明的一个方面,提供一种SPI接口,该SPI接口包括:多个 同步器,被配置为接收多个SPI信号和内部时钟信号并且使用内部时钟信 号同步所接收的SPI信号;以及SPI协议处理机(SPI protocol handler), 被配置为接收经同步的SPI信号和内部时钟信号并且根据SPI协议来检测 和评估该同步SPI信号中至少一个同步SPI信号的信号跃迁(signal  transition,信号转换)。

根据本发明的又一方面,提供了一种经由SPI接口的串行通信方法, 该方法包括以下步骤:接收多个SPI信号和内部时钟信号;使用内部时钟 信号同步多个SPI信号;以及根据SPI协议来检测和评估同步SPI信号中 至少一个同步SPI信号的信号跃迁。

根据以下参考附图作出的本发明详细描述,本发明的更多特征、方面 和优点将变为显而易见。

附图说明

包含附图从而提供对本发明的进一步理解,并且将附图并入本说明书 中且构成本说明书一部分。附图示出本发明实施方式,并且与说明书一起 用于说明本发明原理。本发明的其它实施方式以及本发明的许多预期优点 将容易理解,因为它们通过参考以下详细描述变为更好理解。

图1示例性示出根据本发明实施方式的SPI接口的简化示意图。

图2示出根据本发明实施方式的示例性方法。

具体实施方式

在以下详细描述中,参考附图,附图形成以下详细描述一部分,并且 其中通过示出可实现本发明的特定实施方式来示出。应当理解,可利用其 它实施方式,并且在不脱离本发明范围的情况下可作出结构或者其它变 化。因此,以下详细描述并无限制之意,并且本发明范围由所附权利要求 限定。

图1示例性示出根据本发明实施方式的SPI接口的简化示意图。

图1所示的SPI接口包括串行数据输入(SDI)信号输入端11a,芯 片选择(CS)信号输入端11b,串行时钟(SCLK)信号输入端11c,串行 数据输出(SDO)信号输出端11d,内部时钟输入端13,第一、第二和第 三同步器12a、12b和12c,第一、第二和第三数字滤波器14a、14b和14c, SPI协议处理机16和输出级18。

在图1所示的实施方式中,同步器12a、12b和12c,数字滤波器14a、 14b和14c,SPI协议处理机16和SPI输出级18连接到内部时钟信号输入 端13以接收内部时钟信号。内部时钟信号由明确定义的内部时钟(特别 是不受来自芯片外部的噪声影响的片上振荡器)提供。因此,SPI的所有 设备由明确定义的内部时钟来计时。

在本发明的优选实施方式中,同步器12a、12b和12c为同步器触发 器。同步器触发器被允许经历亚稳态长达一定时间间隔,因为它们在预定 义恢复时间之后从亚稳态恢复。恢复时间的长度必须小于内部时钟持续时 间,使得同步器触发器的输出或者结果在预定义恢复时间过去之前不被其 它同步逻辑器件(例如,数字滤波器和SPI协议处理机)使用。

第一同步器12a进一步连接到SDI输入端11a和第一数字滤波器14a。 第一同步器12a从SDI输入端11a接收SDI信号,同步所接收的SDI信号, 并且将经同步的SDI信号输出到第一数字滤波器14a。

第二同步器12b进一步连接到CS输入端11b和第二数字滤波器14b。 第二同步器12b接收来自CS输入端11b的CS信号,同步所接收的CS信 号,并且将经同步的CS信号输出到第二数字滤波器14b。

第三同步器12c进一步连接到SCLK输入端11c和第三数字滤波器 14c。第三同步器12c从SCLK输入端11c接收SCLK信号,同步所接收 的SCLK信号,并且将同步的SCLK信号输出到第三数字滤波器14c。

数字滤波器14a、14b和14c可检查一定数目(例如,3、5、8等) 的连续采样是否包括相同值(例如,1),如果是,那么输出该值作为滤波 结果。可替换地,数字滤波器14a、14b和14c可检查许多连续采样中一 定比例(例如,五分之四、七分之五等)是否包括相同值(例如,1),如 果是,那么输出该值作为滤波结果。然而,应当理解,本发明并不限于上 述示例性滤波器设计,而是也可利用其它滤波器设计。

第一数字滤波器14a从第一同步器12a接收经同步的SDI信号,对于 经同步的SDI信号进行滤波,并且将经同步且滤波的SDI信号(SDI filt) 输出到SPI协议处理机16。

第二数字滤波器14b从第二同步器12b接收经同步的CS信号,对于 经同步的CS信号进行滤波,并且将经同步且滤波的CS信号(CS filt)输 出到SPI协议处理机16。

第三数字滤波器14c从第三同步器12c接收经同步的SCLK信号,对 于经同步的SCLK信号进行滤波,并且将经同步且滤波的SCLK信号 (SCLK filt)输出到SPI协议处理机16。附加地,第三滤波器也产生单独 SCLK信号(SCLK fast),该SCLK信号被输出到SPI输出级18。SCLK fast 这个信号具有比SCLK filt更短的延迟,即,SCLK fast通过了比SCLK filt 所通过的滤波级更少的滤波级。

因此,所有SPI输入信号由同步器(具体为同步器触发器)12a、12b 和12c进行同步并且由数字滤波器14a、14b和14c进行滤波,从而在它 们到达SPI协议处理机之前抑制例如信号噪声事件。此外,作为包含在SPI 协议处理机中的触发器的所有SPI相关触发器(以下简称“SPI触发器”) 通过内部(明确定义的)时钟来计时。在图1的SPI接口中,重要的是内 部时钟比外部SPI时钟SCLK更快,否则,同步器12a、12b和12c以及 数字滤波器14a、14b和14c将使包含在SPI信号中的一些跃迁松动(loose)。

在本发明的优选实施方式中,数字滤波器14a、14b和14c的数字滤 波器级为等效,使得同步且滤波的不同SPI输入信号延迟了相同时间量。

有利地,通过使用时钟选通可降低功耗,例如,时钟选通可实现当芯 片选择信号无效时不对数字滤波器14a、14b和14c计时。

在这方面,应当理解,在本发明某些实施方式中,芯片选择信号为“高 -有效”信号:当CS信号为高时,“芯片选择”有效,当CS信号为低时, “芯片选择”为无效。在替代性实施方式中,芯片选择信号也可为“低- 有效”信号,“低-有效”信号可称为“nCS信号”。在这种情况下,当nCS 信号为低时,“芯片选择”有效,当nCS信号为高时,“芯片选择”为无效。

因此,在图1所示的SPI接口中,外部噪声事件或者毛刺(引起SPI 时序违规)不会引起SPI触发器处(即,包含在SPI协议处理机16中的 触发器)时序违规。否则,由于可引起SPI触发器/SPI接口的随机行为严 重后果的外部毛刺,SPI触发器可变为亚稳态。

同步器触发器仅仅为包含在图1所示的SPI接口中的触发器,其可经 历亚稳态达一定时间间隔,因为这些同步器触发器在预定义恢复时间之后 从亚稳态恢复。

SPI协议处理机16接收经同步且滤波的SPI输入信号SDI filt、CS filt、 SCLK filt,检测所接收的SPI输入信号中的信号跃迁(即,上升沿/下降沿), 并且根据SPI协议评估所检测的信号跃迁。

在本发明的优选实施方式中,数字滤波器14a、14b和14c附加地产 生指示经滤波的SPI信号的信号跃迁(即,上升沿/下降沿)的信号。在这 种情况下,SPI协议处理机16从数字滤波器14a、14b和14c接收经同步 且滤波的SPI输入信号以及指示SPI输入信号的信号跃迁的相应信号用于 评估。

根据SPI协议的SPI输入信号的示例性评估将在下文中简要描述。SDI 存取可以将CS信号的(例如,上升)边沿作为开始。此时,包含在SPI 协议处理机16中的移位寄存器初始化,即,由外部源提供的并行输出值 采样到SPI协议处理机16的移位寄存器中。

输出级18另外地接收单独SCLK信号,即,SCLK fast,其具有较小 固有延迟,其比提供给SPI协议处理机的SCLK信号(即,SCLK filt)被 更少地滤波。因此,反应时间可减少,使得输出级18可在SCLK信号的 (例如上升)边沿之后立即将输出位提供给SDO输出端11d。

时钟信号SCLk fast可包括某个时序方差,由于它比SCLK filt更少地 过滤。然而,这些时序方差不能导致未定义状态,由于转发值(输出位) 由SPI协议处理机的移位寄存器唯一地提供(因而定义),其中该移位寄 存器由完全滤波的SCLK filt信号来计时。

然后,在SCLK信号的(例如下降)边沿之后,SDI值“移位”到移 位寄存器中,并且包含在移位寄存器中的所有位移位了一个位置,使得 SDI值被采样到移位寄存器的“第一”位置中,并且位于移位寄存器的“最 后”位置中的位(例如MSB)移出移位寄存器,而移位寄存器中所有其 它位移位了一个位置。

同样,输出级18接收单独SCLK信号,即,SCLK fast,其具有较小 固有延迟,因为它比提供给SPI协议处理机的SCLK信号(即,SCLK filt) 被更少地滤波。因此,反应时间可减少,使得输出级可在SCLK信号的(例 如上升)边沿之后立即将输出位提供给SDO输出端11d。

然后,在SCLK信号的另一个(例如下降)边沿之后,下一个SDI 值“移位”到移位寄存器中,并且包括在移位寄存器中的所有位移位了一 个位置,使得下一个SDI值采样到移位寄存器的“第一”位置中,并且位 于移位寄存器的“最后”位置中的位移出移位寄存器,而移位寄存器中所 有其它位移位了一个位置。

只要芯片选择信号为有效(例如,CS为高),那么就重复以上步骤。 当芯片选择信号变为无效(例如,CS变为低)时,存取完成,并且内容 可读出且作为并行输入值提供给另一个片上设备。在某些实施方式中,芯 片选择信号在固定数目的SCLK周期内为有效,该固定数目等于包括在移 位寄存器中的位数,使得移位寄存器的整个内容在单个SPI存取期间替换, 即,所有“在前”位移出,并且由连续采样到移位寄存器中的对应数目所 接收SDI值替换。

在本发明优选实施方式中,SDI协议处理机附加地监视数字滤波器的 输出以进行另外的SPI协议检查和/或评估,诸如:

在SPI时钟开始计时之前,检查芯片选择信号上是否有有效边沿;

检查SCLK信号的至少一个(例如下降)边沿是否出现;

检查SCLK信号的预定义数目的(例如下降)边沿是否出现;

评估SCLK信号的边沿之间的时间间隔;以及

评估SPI信号的长度。

基于SPI协议检查和/或评估的结果,SPI协议处理机16判定SPI存 取是否有效。假使存取无效,那么该存取被忽略并被识别为无效,即,在 这个存取中接收的所有数据丢弃,并且有利地,SPI协议处理机16设置错 误标记位。

因此,通过防止外部SPI信号(直接)连接到关键SPI触发器输入端, 图1所示的SPI接口确保定义SPI行为。即使在存取期间SPI时序违规的 情况下,定义SPI行为也保证:如果检测到SPI存取中时序违规,那么相 应SPI存取被识别为损坏,在这个存取中接收的所有数据丢弃,并且可额 外地设置错误标记。

图2示出根据本发明实施方式的示例性方法。经由SPI接口的串行通 信方法包括以下步骤:

接收多个SPI信号和内部时钟信号(步骤202);

使用内部时钟信号同步多个SPI信号(步骤204);

对于同步SPI信号进行数字滤波(步骤206);

根据SPI协议检测和评估同步且滤波的SPI信号中至少一个SPI信号 的信号跃迁(步骤208)。

虽然本文中已经示出和描述特定实施方式,但是本领域技术人员应当 理解,在不脱离本发明范围的情况下,多种替代和/或等效实现可取代示出 和描述的特定实施方式。本申请旨在包括本文中讨论的特定实施方式的任 何修改或者变动。因此,本发明仅通过权利要求及其等同物来限制。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号