0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

JEDEC定义了一种串行复位协议,用以取代专用复位引脚

NJ90_gh_bee81f8 来源:面包板社区 2019-12-08 09:19 次阅读

行业标准组织JEDEC定义了一种串行复位协议,用以取代专用复位引脚。

今天的嵌入式系统,例如智能设备和物联网终端,通常都要求在实现高性能与低功耗的同时提供实时启动功能。所有电子系统还要具备从瞬态故障引起的状况中恢复的能力。这些故障通常与信号完整性密切相关,这使得当今的高速系统设计更具挑战性。

从运行时出现的故障中恢复通常需要能够对系统的全部或部分进行受控复位。极端情况下,若尚未提供软复位功能,此时就可能会提示需要重新启动设备。而对于远程的物联网终端来说,重启可能存在困难而且成本高昂。这只是说明嵌入式设计中复位功能重要性的一个示例。

串行外设接口(SPI)广泛应用于将外设和存储器连接到嵌入式系统中的微控制器处理器中。复位串行闪存是初始化或恢复的重要部分。为使主机处理器能够更容易地重置SPI存储器,行业标准组织JEDEC定义了一种串行复位协议,替代了使用专用复位引脚来进行复位。本文介绍了该复位协议及其用法,特别参考了扩展SPI(xSPI)和串行非易失性存储器的执行代码。

SPI闪存的作用

串行接口相对于并行总线的主要优点是减少了所需信号数量。在大多数情况下,较少的信号和I/O引脚可降低元件成本与功耗,因为驱动片外信号所需的功率是总功率消耗的主力军。

最初的SPI规范包括四种信号:一个串行时钟(SCLK)信号,用于同步数据传输;一个或多个芯片选择(SS)信号用于实现寻址多个目标;以及两个数据信号(MOSI和MISO),用于在每个方向上传输数据。该标准目前已经以各种方式进行了扩展以实现更高的性能,现在更拓展了通过SPI接口执行软复位的功能。


串行外设接口(SPI)(来源:Adesto Technologies)

SPI接口不断演变和发展以扩大带宽,其变体现在包括dual SPI(双线SPI),它使用半双工配置中的两个数据引脚在每时钟周期内发送两个bit的数据;还有quad SPI(四线SPI)和octal SPI(八线SPI),它们增加了更多数据线,使得每个时钟周期可以传输更多位数。此外,这些SPI都可在双倍数据速率(DDR)模式下使用,且支持在两个时钟边缘传输数据。

Quad和Octal SPI接口由JEDEC的扩展SPI(xSPI)标准JESD251定义,该标准提供的硬件指导可以实现系统中高吞吐量xSPI器件的无故障集成。

最近,JEDEC还定义并发布了一个标准,规定了通过串行接口重置设备。该复位协议在JEDEC标准JESD252中定义,它取消了在串行闪存中使用专用复位引脚来进行复位的需求。

该标准定义了芯片选择信号、时钟信号和输入数据信号需要遵循的特定顺序,以使器件执行硬件复位。使用该模式使得由串行数据线上的噪声引起的伪转换不会导致意外复位。在复位期间,时钟信号保持低电平,进一步确保了引脚转换不会被解释为数据传输,而芯片选择引脚则用于确保仅复位特定的器件。


复位协议(来源:Adesto Technologies)

SPI闪存被广泛应用于嵌入式产品,特别是用于其代码。这使得它对系统整体功能而言显得至关重要,因此必须保持可靠的运行,包括具备必要时发起复位的能力。

利用复位进行初始化和恢复

系统通常在通电时使用复位功能来确保系统中所有器件都以已知状态启动。复位还可用于在运行期间从可能由硬件问题引起的严重故障中恢复,其中包括信号完整性问题和时序问题、电磁干扰或由背景辐射引起的随机存储器损坏(另请参见《MiTIgating Metastability》这篇文章);还可用于由软件错误可能导致的程序崩溃和无响应。

这些偶发的错误对于消费者可能是仅仅造成不便,但对于具有数千个节点需要高可用性的物联网而言,却是一个严重的问题。在越来越多的情况下,手动复位或重启这些物联网设备变得越来越不可能。嵌入式系统通常使用看门狗定时器和其它自检机制来检测故障并采取纠正措施。这就可能意味着执行“软”复位,其中只有必要的子系统在处理器的控制下被复位。

SPI接口是有状态的(stateful)。例如,在接收到命令之后,闪存将期望有一定数量的地址或数据传输。导致主机和内存之间失去同步的任何错误都将引起不可预测的行为。要从中恢复,主机需要能够通过执行软复位将串行存储器重置为已知状态。这种复位有助于保持系统稳定,而且是在没有看到任何外部故障指示的情况下进行的。也因为如此,软复位现在被认为是嵌入式系统操作的一个标准特性。

有些串行闪存可能有一个专用的复位引脚;但另一些则使用多路复用以减少引脚数,此时,复位引脚同时也是一个I/O引脚;但有时候,制造商可能根本不提供复位功能。即使有复位引脚,专门指定微控制器的一个输出去控制它也不实际。

JESD252规范的产生使得串行闪存设备无需专用或物理复位引脚仍然可以支持复位功能。除了故障恢复之外,还可以在上电启动时使用串行复位机制,以确保电源稳定后串行存储器也能正确启动。

芯片内执行(XiP)

传统的串行闪存通过低速SPI连接,这意味着如果这些器件用于存储程序存储器,则处理器在执行代码之前必须先将代码复制到片上SRAM中。而芯片内执行,即XiP,是通过提供更快更宽的接口省去了代码复制步骤的串行闪存。反过来,这减少了对片上SRAM的需求,从而降低了主机微控制器或处理器的价格。

与其他八通道器件相比,Adesto的EcoXiP采用octal SPI接口,具有高性能和极低功耗,并且具有比quad-SPI存储器高得多的性能。


Execution modes (Source: Adesto Technologies)
执行模式 (来源: Adesto Technologies)

对于现代嵌入式设备来说,XiP的开发极具价值,不仅仅是因为片上闪存的昂贵和尺寸上的限制。微控制器通常最多具有1 MB的内存,但现代物联网节点通常需要更多的代码空间用于通信堆栈、无线接口、音频处理、机器视觉和应用软件等功能。利用XiP的外部闪存可以实现更大的代码存储空间。而且由于减去了代码传输阶段,启动时间也缩短了。

XiP的使用使得SRAM无需存储代码而是仅用于存储数据,从而减少了所需的SRAM数量。因为削减了对外部SRAM的需求或允许微控制器使用较少的片上SRAM,系统成本也相应降低。由于NOR闪存(非易失性闪存)允许随机访问,而微控制器需要将串行接口映射到其自己的存储空间,因此它被视为另一个存储区域,从而支持XiP。为了进一步提高性能,EcoXiP还针对代码执行进行了优化。

标准SPI接口设计都支持随机访问;每次读取都包含命令、地址和返回的数据。数据返回后,才可以进行再次请求。但是,指令通常从连续地址中获取。EcoXiP接口充分利用了这一点,为每个读取请求提供连续字节,直到具有新地址的命令被发送为止。这使得总线吞吐量加倍,因为消除了为每次提取发送新地址的延迟。

EcoXiP可以持续以156MB/s(峰值速率为266 MB/s)的速率发送指令。

传统NOR闪存的另一个问题是写入比读取慢几个数量级。这意味着当代码在闪存中执行时无法将数据写入闪存,因为这样会对性能产生重大影响。EcoXiP通过灵活地将存储器划分为独立的存储体来支持并发读写。这使得采用XiP可以在执行代码的同时,将数据保存到存储器并执行(Over-the-AIr,OTA)空中更新。

对JEDEC标准的支持,包括远程复位的支持,使业界采用XiP串行闪存变得更加简单。

结论

在主处理器的控制下能够复位串行闪存是嵌入式系统的重要需求。JEDEC JESD252串行复位协议可实现该功能,而无需存储器上的复位引脚或来自微控制器或主机处理器的专门信号。

尽管使用串行复位和XiP会影响主机和存储器的设计,还是有越来越多的微控制器正在增加对这些标准的支持。Adesto是第一家提供串行NOR闪存的制造商,其产品支持串行闪存复位信令协议和xSPI标准。EcoXiP可在提供所需执行能力的同时降低系统功耗与成本。它还兼容串行闪存发现标准,并具有改善能效和安全的其它特性。

拥有上述技术,嵌入式工程师可以更好地应对开发物联网产品时所面临的挑战。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 嵌入式系统
    +关注

    关注

    41

    文章

    3570

    浏览量

    129249
  • SPI
    SPI
    +关注

    关注

    17

    文章

    1701

    浏览量

    91339
  • JEDEC
    +关注

    关注

    1

    文章

    36

    浏览量

    17424

原文标题:JEDEC软复位——嵌入式开发人员的福音

文章出处:【微信号:gh_bee81f890fc1,微信公众号:面包板社区】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    FPGA复位的8技巧

    在 FPGA 设计中,复位起到的是同步信号的作用,能够将所有的存储元件设置成已知状态。在数字电路设计中,设计人员般把全局复位作为个外部引脚
    的头像 发表于 11-16 10:18 223次阅读
    FPGA<b class='flag-5'>复位</b>的8<b class='flag-5'>种</b>技巧

    复位电路的三方式 复位电路的原理和作用

    复位电路是一种电子电路,用于将微控制器或其他电子设备重置到其初始状态。这种电路通常在设备启动时或在需要清除当前状态以避免错误时使用。 1. 上电复位(Power-On Reset, POR
    的头像 发表于 10-21 10:28 451次阅读

    复位电路静电整改案例分享()——交换机复位电路

    ​  复位电路静电整改案例分享()——交换机复位电路 、摘要 复位电路可确保电路在启动时处于可控的状态,避免上电造成的未知问题。
    的头像 发表于 10-19 14:56 286次阅读
    <b class='flag-5'>复位</b>电路静电整改案例分享(<b class='flag-5'>一</b>)——交换机<b class='flag-5'>复位</b>电路

    复位电路介绍 复位电路的原理及作用

    复位电路(Reset Circuit)是现代电子设备中常见的一种关键电路,它用于确保在正确的时间和条件下将系统恢复到初始状态。复位电路的设计和应用对于保障电子系统的稳定性和可靠性至关重要。
    的头像 发表于 10-18 16:44 934次阅读

    STM32复位电路用复位芯片和阻容复位电路区别

    STM32是款广泛使用的微控制器,其复位电路设计对于系统的稳定性和可靠性至关重要。本文将详细介绍STM32复位电路中使用复位芯片和阻容复位
    的头像 发表于 08-06 10:26 1188次阅读

    双管正激励磁复位电路的作用

    双管正激励磁复位电路是一种广泛应用于电子设备中的电路,它具有多种功能和优点。 、双管正激励磁复位电路的作用 双管正激励磁复位电路是
    的头像 发表于 08-02 15:41 428次阅读

    FPGA同步复位和异步复位

    FPGA(Field-Programmable Gate Array,现场可编程门阵列)中的复位操作是设计过程中不可或缺的环,它负责将电路恢复到初始状态,以确保系统的正确启动和稳定运行。在FPGA设计中,复位方式主要分为同步
    的头像 发表于 07-17 11:12 1377次阅读

    ABB变频器怎么复位 | 复位时可能会出现哪些问题?

    ABB变频器是一种应用广泛的工业自动化设备,广泛应用于电机控制、电力传输、风机控制和制造等领域。然而,在使用ABB变频器的过程中,有时候我们可能需要对设备进行复位,以达到重新设置和调整的目的。那么
    的头像 发表于 02-21 10:50 7312次阅读
    ABB变频器怎么<b class='flag-5'>复位</b> | <b class='flag-5'>复位</b>时可能会出现哪些问题?

    GD32 MCU电源复位和系统复位有什么区别

    GD32 MCU的复位分为电源复位和系统复位,电源复位又称为冷复位,相较于系统复位,上电
    的头像 发表于 02-02 09:37 1431次阅读
    GD32 MCU电源<b class='flag-5'>复位</b>和系统<b class='flag-5'>复位</b>有什么区别

    同步复位和异步复位到底孰优孰劣呢?

    同步复位和异步复位到底孰优孰劣呢? 同步复位和异步复位是两不同的复位方式,它们各自有优势和劣势
    的头像 发表于 01-16 16:25 1639次阅读

    复位电路的复位条件和复位过程

    电源监测芯片复位电路:这是最常见的复位电路类型,使用专用的电源监测芯片来监测电源电压,并在电压低于或高于预设阈值时触发复位信号。
    的头像 发表于 01-16 16:04 1191次阅读

    stm32复位电容容值

    统电源稳定、提供复位功能。 复位电容是连接在微控制器的复位引脚和地之间的电容器。在启动或复位过程中,复位
    的头像 发表于 01-05 17:39 1681次阅读

    ht7044a复位原理

    HT7044A 是一种复位电路芯片,常用于电子设备中实现对系统的复位功能。复位项重要的功能,用于将整个系统恢复到初始状态,以确保系统在启
    的头像 发表于 01-04 11:24 1551次阅读

    启动转换,需要给复位引脚复位信号吗?

    图中,可看到启动转换前送入复位信号,搞不清这个复位信号是内部产生的,还是外部操作复位引脚产生的,因在手册中数字
    发表于 12-11 06:15

    复位那些小事—系统解复位的特殊处理

    复位就是复位撤离,系统解复位就是复位结束系统准备开始工作。
    的头像 发表于 12-04 15:25 1602次阅读
    <b class='flag-5'>复位</b>那些小事—系统解<b class='flag-5'>复位</b>的特殊处理