Delta Oscar Uniform Asked: 2021-02-21 23:30:01 +0800 CST2021-02-21 23:30:01 +0800 CST 2021-02-21 23:30:01 +0800 CST 连续剧的真正含义是什么?USB3 / SATA实际上不是并行的吗?[复制] 772 据我所理解。串行意味着数据被一个接一个地发送,而不是并行发送多个数据位同时流式传输。 然而,像 SATA 和 USB 3 这样的连接实际上有超过 2 个数据引脚。那么到底串行和并行的真正含义是什么? usb sata 2 个回答 Voted Justme 2021-02-22T00:42:43+08:002021-02-22T00:42:43+08:00 通信是串行的,为了提高抗噪声能力,数据不是通过单端线发送,而是通过双绞线作为差分信号发送。 USB3 和 SATA 都具有一对发送对和一对接收对用于高速信号。 USB3 还具有向下兼容性,因此它具有双向的传统 USB2 数据对。 Best Answer Jörg W Mittag 2021-02-22T02:34:05+08:002021-02-22T02:34:05+08:00 据我所理解。串行意味着数据被一个接一个地发送,而不是并行发送多个数据位同时流式传输。 这或多或少是正确的。串行意味着符号(一个符号可以编码多个位,最简单的示例是通过使用 4 个不同的电压而不是仅仅“开”和“关”来传输 2 位)在单行上一个接一个地发送,并行意味着同时发送多个符号,每个符号在单独的平行线上。 并行传输的最大问题是时间:如果其中一条线仅比其他线稍长或稍短,那么该符号将在其他线之前或之后到达。这意味着接收端需要有某种方式来缓冲符号,其时间至少与最早到达符号和最晚到达符号之间的差值一样长。 电缆的每一个弯曲,制造过程中的每一个细微缺陷,都会增加路径差异的数量。甚至想一想如何将电路板上的走线连接到连接器:每次绕过拐角时,外部走线都比内部走线长。 一旦差值接近(倒数)时钟速率,即最早和最新符号之间的差值接近两个符号之间的时间,您就不能再重建数据。 有两种方法可以使并行传输更快:增加时钟速率和增加并行线的数量。但是,上面概述的问题对加快并行传输的两种方式都施加了硬性限制: 如果您增加时钟频率,符号之间的时间会减少,因此您的最大允许差分会减少。这意味着如果您提高时钟速率,您可能需要限制并行线的数量以限制路径差异的可能性。 如果增加平行线的数量,就会增加潜在的路径差异量。这意味着如果您增加并行线的数量,您可能需要限制时钟速率以允许增加路径差。 更长的电缆也会增加路径差异的可能性,因此传输速度越快,允许的电缆长度就越短。一个真实的例子是并行 ATA 的最后一个版本,其中允许的最大电缆长度非常短,以至于在一些大型塔式机箱(这是用于高性能工作站的机箱外形尺寸,从更快的速度中受益最多) HDD 传输速度)您甚至无法从主板到达 HDD 托架! 一旦达到更高的速度,复杂性就会变得难以控制。 然而,像 SATA 和 USB 3 这样的连接实际上有超过 2 个数据引脚。那么到底串行和并行的真正含义是什么? 让我们看看这些引脚的实际用途。 我们必须在这里谈谈几件事。第一个是单工、半双工和全双工之间的区别。通常,您只能在(电气)线路上以一种方式发送数据。这称为单工通信。 但是,您通常希望双向发送数据。一种方法是半双工通信,您可以双向发送数据,但不能同时发送。链路一端只有一个站可以发送数据,然后您将其切换,以便其他站可以发送。这是不可取的。相反,大多数高速通信链路(无论它们是串行还是并行)都是全双工的,通常这样做的方式是简单地使用两条线路,一条用于发送,一条用于接收。(不需要有两条线,但它更容易。) 顺便说一句,这就是为什么在连接器中的 Tx 和 Rx 引脚之间的电线被交换的地方存在交叉电缆的原因。 因此,我们已经需要两个引脚用于一个连接。 我们需要谈论的另一件事是差分信号。这是一种提高对引入电缆的外部电磁噪声的弹性的方法。在一个非常高级的视图中,它实际上非常简单:不是在一根线上传输信号,而是使用两根线,其中一根线携带另一根线的精确反转信号。这两条线绞合在一起成为双绞线。 由于两条线紧密绞合在一起,因此引入的任何噪声都会大致相等地影响两条线。但!由于一根线携带与另一根线完全相反的信号,接收器可以做的是简单地查看两根线的差异,并且由于两根线上的噪声相同,它将抵消: 电线 1 承载:+信号 + 噪声 导线 2 承载:-信号 + 噪声 区别是:wire1-wire2=+signal+noise-(-signal+noise)=+signal+signal+noise-noise=2×signal 所以,同样,我们需要两个引脚来接收一个信号。 如果我们结合全双工和差分信号,这意味着我们已经有 4 个引脚用于一个串行连接。这不是并行通信,这是单个串行链路。(实际上,并行连接也经常使用全双工和差分信号,这意味着它们每条并行线有 4 个引脚。) 所以,如果我们看一下 SuperSpeed USB,它有 8 个数据引脚。但如果我们考虑到我们讨论的内容,那实际上只有两条沟通渠道。 但是,为什么是两个?这不是让它平行吗? 不,它没有,原因是这是两个独立的串行数据通信通道。这样的通道通常称为通道。两条通道中的每条通道都是其自己独立的串行通信通道。这两个通道可以用于两个完全独立的数据流(我相信 Thunderbolt 可以做到这一点)。或者,您可以跨多个较低级别的数据包流多路复用单个较高级别的数据流。 这与单个比特/符号的并行传输根本不同。每个符号仅在一条线上串行传输,符号组被一起视为单个数据包,但数据包再次通过单线串行发送。只有在更高的级别上,您才能将数据拆分为单独的数据包并通过多个通道发送这些数据包。 因为不只是并行发送单个符号,而且还有更高级别的打包/成帧,所以处理不同车道上的不同旅行时间要容易得多。我们可以将序列号添加到数据包中,因此即使它们相互超越,我们仍然可以按照正确的顺序组装它们。我们可以检测丢失的序列号并要求重传。 我们的“同步边界”,即我们需要同步并行通道的点要大得多:我们需要对数据包进行同步,这些数据包可以是很多位而不是每个单独的位。所以,我们的“同步时钟”只是线路时钟速度的一小部分。
通信是串行的,为了提高抗噪声能力,数据不是通过单端线发送,而是通过双绞线作为差分信号发送。
USB3 和 SATA 都具有一对发送对和一对接收对用于高速信号。
USB3 还具有向下兼容性,因此它具有双向的传统 USB2 数据对。
这或多或少是正确的。串行意味着符号(一个符号可以编码多个位,最简单的示例是通过使用 4 个不同的电压而不是仅仅“开”和“关”来传输 2 位)在单行上一个接一个地发送,并行意味着同时发送多个符号,每个符号在单独的平行线上。
并行传输的最大问题是时间:如果其中一条线仅比其他线稍长或稍短,那么该符号将在其他线之前或之后到达。这意味着接收端需要有某种方式来缓冲符号,其时间至少与最早到达符号和最晚到达符号之间的差值一样长。
电缆的每一个弯曲,制造过程中的每一个细微缺陷,都会增加路径差异的数量。甚至想一想如何将电路板上的走线连接到连接器:每次绕过拐角时,外部走线都比内部走线长。
一旦差值接近(倒数)时钟速率,即最早和最新符号之间的差值接近两个符号之间的时间,您就不能再重建数据。
有两种方法可以使并行传输更快:增加时钟速率和增加并行线的数量。但是,上面概述的问题对加快并行传输的两种方式都施加了硬性限制:
更长的电缆也会增加路径差异的可能性,因此传输速度越快,允许的电缆长度就越短。一个真实的例子是并行 ATA 的最后一个版本,其中允许的最大电缆长度非常短,以至于在一些大型塔式机箱(这是用于高性能工作站的机箱外形尺寸,从更快的速度中受益最多) HDD 传输速度)您甚至无法从主板到达 HDD 托架!
一旦达到更高的速度,复杂性就会变得难以控制。
让我们看看这些引脚的实际用途。
我们必须在这里谈谈几件事。第一个是单工、半双工和全双工之间的区别。通常,您只能在(电气)线路上以一种方式发送数据。这称为单工通信。
但是,您通常希望双向发送数据。一种方法是半双工通信,您可以双向发送数据,但不能同时发送。链路一端只有一个站可以发送数据,然后您将其切换,以便其他站可以发送。这是不可取的。相反,大多数高速通信链路(无论它们是串行还是并行)都是全双工的,通常这样做的方式是简单地使用两条线路,一条用于发送,一条用于接收。(不需要有两条线,但它更容易。)
顺便说一句,这就是为什么在连接器中的 Tx 和 Rx 引脚之间的电线被交换的地方存在交叉电缆的原因。
因此,我们已经需要两个引脚用于一个连接。
我们需要谈论的另一件事是差分信号。这是一种提高对引入电缆的外部电磁噪声的弹性的方法。在一个非常高级的视图中,它实际上非常简单:不是在一根线上传输信号,而是使用两根线,其中一根线携带另一根线的精确反转信号。这两条线绞合在一起成为双绞线。
由于两条线紧密绞合在一起,因此引入的任何噪声都会大致相等地影响两条线。但!由于一根线携带与另一根线完全相反的信号,接收器可以做的是简单地查看两根线的差异,并且由于两根线上的噪声相同,它将抵消:
所以,同样,我们需要两个引脚来接收一个信号。
如果我们结合全双工和差分信号,这意味着我们已经有 4 个引脚用于一个串行连接。这不是并行通信,这是单个串行链路。(实际上,并行连接也经常使用全双工和差分信号,这意味着它们每条并行线有 4 个引脚。)
所以,如果我们看一下 SuperSpeed USB,它有 8 个数据引脚。但如果我们考虑到我们讨论的内容,那实际上只有两条沟通渠道。
但是,为什么是两个?这不是让它平行吗?
不,它没有,原因是这是两个独立的串行数据通信通道。这样的通道通常称为通道。两条通道中的每条通道都是其自己独立的串行通信通道。这两个通道可以用于两个完全独立的数据流(我相信 Thunderbolt 可以做到这一点)。或者,您可以跨多个较低级别的数据包流多路复用单个较高级别的数据流。
这与单个比特/符号的并行传输根本不同。每个符号仅在一条线上串行传输,符号组被一起视为单个数据包,但数据包再次通过单线串行发送。只有在更高的级别上,您才能将数据拆分为单独的数据包并通过多个通道发送这些数据包。
因为不只是并行发送单个符号,而且还有更高级别的打包/成帧,所以处理不同车道上的不同旅行时间要容易得多。我们可以将序列号添加到数据包中,因此即使它们相互超越,我们仍然可以按照正确的顺序组装它们。我们可以检测丢失的序列号并要求重传。
我们的“同步边界”,即我们需要同步并行通道的点要大得多:我们需要对数据包进行同步,这些数据包可以是很多位而不是每个单独的位。所以,我们的“同步时钟”只是线路时钟速度的一小部分。