24小时联系电话:18217114652、13661815404

中文

您当前的位置:
首页>
电子资讯>
行业资讯>
是否有SPI走线阻抗要...

行业资讯

是否有SPI走线阻抗要求?


是否有SPI走线阻抗要求?

本文是关于串行外围接口(SPI)及其信号完整性挑战的全部内容,所有这些都源于接口的阻抗和承载数字信号的走线。在进入本文的主要观点之前,我将回答我自己的问题:

没有SPI走线阻抗要求。您当然可以调整SPI总线中的走线大小,使其阻抗为50欧姆,但这不是必需的。

当我写没有SPI走线阻抗要求“50 欧姆……不是必需的时,我的意思是SPI没有指定任何特定的阻抗要求。如果您查看其他声称“SPI 需要受控阻抗的设计指南,您实际上会发现它们通常没有说明特定的阻抗值。充其量,他们会说明从30欧姆到150欧姆的范围。这是一个很大(而且不是很有用)的值范围。

我最近看到的另一个例子是一家主要半导体制造商的应用说明,指出SPI线路需要受控阻抗和长度匹配,显然忽略了该接口的设置时间和全双工特性。他们也没有列出阻抗值或长度不匹配容差值。如果你问我,这不是一个有用的指南。

现实情况是,SPI线路仅在互连长度变得非常长时才开始需要阻抗控制。而且由于总线中没有特定的阻抗要求,因此您在通道设计和端接方面有一定的自由度。那么究竟什么是非常长,什么时候需要某种终止方法呢?我们将在本文中对其进行分解。

SPI拓扑和走线设计

SPI的拓扑结构非常简单。它使用带有单个控制器外设链接的三条线路,或总线上有多个从机的四条线路。上游控制器可以通过一对高达60 Mbps的线路发送和接收数据,数据可能通过电缆发送到另一个板或设备。典型SPI总线的拓扑如下所示。

那么PCB上会发生什么?如果您查看具有SPI接口的组件的数据表,您会发现高级组件的最小上升时间值短至1 ns。对于某些组件,上升时间可能更长,可能为20 ns或更长。显然,即使数据速率和时钟速率很低,像SPI这样的慢速总线仍然可以具有高速信号行为,但没有阻抗规范!如何最好地处理SPI设计?

SPI路由的上升时间是多少?

SPI中的这个问题有些沟通不畅,它是那些经典的高速PCB设计问题之一。由于我们需要确定SPI链路在上升时间方面是还是,所以第一步是了解对上升时间的确切影响。

第一步是在您的数据表中查找将控制您的SPI总线的主组件。如果您的组件有据可查,SPI接口上的上升时间将针对总线上看到的特定负载电容指定。请注意,负载电容假定SPI输出和测试负载之间的连接电感为零,因此您可以将此上升时间值视为RC时间常数,以进行初步近似。

示例数据表条目与为特定负载电容指定的信号上升时间和下降时间相关。

上述示例中的高负载电容值并不是大多数组件的典型值,但它说明了要点:上升时间由总线的电容决定。在此示例中,如果我们采用上面指定的10%-90%上升时间并将其等同于2.2RC(用于确定时间常数值的标准),我们将得到R = 113.6作为总线上的电阻。这意味着,如果我们要在驱动器上添加一些电阻(见下文),那么我们可以在匹配阻抗的同时减慢上升时间。

请记住这些要点,因为稍后我们将使用它来了解为什么可以使用串联电阻端接来减慢SPI总线。既然我们知道了在接收器上看到的总线上升时间,我们就可以确定总线何时

SPI总线是长的还是短的?

粗略地说,我们可以将信号在其上升时间内传播的距离与总长度进行比较。另一种方法是使用上升时间的带宽估计值(在上面的示例中为 35 MHz)来确定总线输入阻抗何时偏离我在本文中描述的负载阻抗太远。粗略估计的简单方法是将信号在其上升时间内行进的距离与互连的传播延迟进行比较。

我更喜欢使用保守的10%的限制来估计公共汽车什么时候开始看起来很长;如果传播延迟小于信号上升时间内行进距离的大约10%,则认为总线很短,我们不需要关心端接总线阻抗:

请注意,其他指南将规定从10%50%的任何地方作为截止值;总线突然变长没有单一的值,这是一个判断问题。例如,对于Dk = 4PCB层上的10 ns SPI信号,10%的截止值为0.15米或15 cm。这意味着,任何承载小于15 cm10 ns信号的SPI路由都将被视为短总线,这适用于许多情况。

如果您的SPI总线速度较慢,您可以使用一些非常简单的指南来防止一些基本的信号完整性问题。您可以实施以同时减少电感(导致振铃)、串扰和辐射发射的一些最简单的指南包括:

将您的SPI线路布置在地平面上,即使它们不是高速的

在薄电介质上使用更宽的走线:外层的尺寸是下一层到GND距离的2-2.5倍;内层上10-15 mil的走线通常很好

如果您使用的是2层板并且没有空间放置接地层,则在SPI线周围放置接地以提供清晰的返回路径

为了获得最佳性能,我建议不要使用2层,而是从与高速数字设计兼容的PCB叠层开始。

为什么人们声明或使用50欧姆的SPI

SPI线路需要具有特定阻抗的情况下,人们使用50欧姆作为目标阻抗是有充分理由的。具有讽刺意味的是,我认为人们实际上并不知道这样做的好处,但他们最终会因为错误的原因做出正确的决定。

如果50欧姆是电气长SPI总线的特征阻抗目标,则电路板上可能还有其他阻抗控制走线也以50欧姆特征阻抗为目标。拥有一个阻抗目标可以让制造商更容易控制阻抗。如果他们必须交换叠层中的材料才能击中您的阻抗目标,那么如果叠层中只有一个目标要击中,那么这样做会容易得多。

为什么在短SPI总线上使用串联端接?

从我们上面看到的,在绝大多数带有SPI跟踪的实际情况中,驱动器或接收器不需要终止。如果有,您会在组件数据表、SPI规范或两者中的某处看到阻抗规范。此外,组件可能会将片上端接应用于目标阻抗,因此您不必为放置电阻器而烦恼。

放置在SPI总线上的终端电阻。

答案很简单:就是减慢驱动程序发出的信号。电阻器还提供阻尼输出上的任何振铃的附带好处。

如果您的控制器是FPGA之类的高级组件,并且您在此控制器中例化了SPI接口,则上升时间可能会非常短,因为设备的物理结构只是确保了非常快的上升时间。因此,减慢信号可能是有利的,这样您就不会有快速信号产生串扰。在这种情况下,您必须将电阻放置在靠近驱动器的位置。

确保不要过多地减慢上升时间,否则信号将太慢而无法在负载处切换I/O,并且可能无法正确读取信号。如果上升时间过长,您也可能违反建立时间。有一个简单的RLC模型可以通过仿真来确定合适的串联电阻值。

SPI总线的集总元件模型

SPI总线的实际模型更为复杂。它包括以下因素:

整个总线上的跟踪电容(C)

走线电感(L)

源阻抗

负载电容

短总线基本上看起来像这个LC模型:

具有短传输线的SPI总线模型。

理想的源阻抗为0欧姆,但实际上它可能是10-30欧姆左右的低值。负载电容应在接收器的数据表中指定。

它是一种总线,如果用快速信号激励并且电感太大,则可能会出现欠阻尼振荡;它也可以在SPICE中进行模拟。在这种情况下添加一个串联电阻会增加阻尼,这将减少上升时间。

请注意,我已将跟踪电阻从此列表中删除;走线电阻将非常小,并且将提供可忽略的损耗和阻尼。这是因为走线电阻大约为毫欧,而控制上升时间的大致近似电阻可以是10-100欧姆,因此显然走线电阻可以忽略不计。

SPI总线中的串联电阻

在不常见的长总线情况下,您必须将SPI线与目标阻抗匹配(50 欧姆很方便)。在这种情况下,只需将SPI I/O上的信号摆幅与电流进行比较,就可以得到处于ON状态的信号的电阻值。在这种情况下,串联电阻通常需要22欧姆或33欧姆才能达到50欧姆的目标。将其放置在靠近驱动器的位置,以实现阻抗匹配并降低信号速度,如此处所述。

带有串联终端电阻的SPI总线模型。

这样做的另一个原因是总线上有多个从属组件。您将与总线每条腿的输入阻抗匹配,并且您可能会减慢上升时间,足以让您不必担心总线分支处的输入阻抗。一般来说,将线路更靠近驱动器分开更好,因为进入每个部分的输入阻抗将更接近线路的特性阻抗。

请输入搜索关键字

确定