gpt4 book ai didi

spi - 如何理解SPI时钟模式?

转载 作者:行者123 更新时间:2023-12-03 08:09:07 24 4
gpt4 key购买 nike

网络上有许多描述 SPI 时序/时钟模式的链接。例如,下面的图片来自here表示 CPOL/CPHA 的 4 种组合决定何时根据时钟上升/下降沿采样/发送数据:

enter image description here

为了使 SPI 正常工作, Controller (或主设备)和设备(或从设备)必须工作在相同的时钟模式下。

前几天,我看到一份描述QSPI Controller 的数据表,说它只支持模式1(CPOL=0,CPHA=1)。它还包含 SPI 接口(interface)的 AC 时序要求,如下所示:

enter image description here

时序图确认 Controller 工作在模式1:空闲时sclk为低电平,在sclk下降沿采样数据。到目前为止一切顺利。

令我困惑的是用户指南中的另一句话:“SPI 仅支持 SPI 模式 1。但是,如果 SPI 设备遵循 Soc AC 时序,则无论何种模式都可用。”怎么可能?显然它违反了“相同模式”规则。例如,当 Controller 处于模式1(下降沿采样)而设备处于模式0或3(上升沿采样)时,它是如何工作的?

顺便说一句,一个工作系统表明该 Controller 实际上与 QSPI 闪存设备一起工作,其数据表表明它仅支持模式 0 和 3。这意味着我在理解 SPI 时钟模式时必须错过一些要点...

任何解释表示赞赏。

最佳答案

您的“模式 1”qspi Controller 的行为与正常模式 1 spi Controller 不同。

看时序图:它在CLK下降沿在MOSI上输出新数据,并在CLK下降沿采样MISO。这并不等同于四种 SPI 模式中的任何一种。这样做是为了实现更高的性能。

(Q)SPI闪存在CLK的上升沿采样MOSI,并在CLK的下降沿在MISO上输出新数据。常规 SPI Controller 将在 CLK 的上升沿采样 MISO。这意味着 CLK 从 Controller 到闪存、闪存访问以及 MISO 返回 Controller 的整个往返过程必须在半个时钟周期内完成。这通常会将您限制在 25MHz 或更低。

通过让 Controller 在下降沿采样 MISO,往返可以获得整个时钟周期的时间,这意味着您可以达到 50MHz 或更高。

关于spi - 如何理解SPI时钟模式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71351912/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com