AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / computer / 问题 / 1627773
Accepted
Delta Oscar Uniform
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
这个问题在这里已经有了答案:
为什么串行数据传输比并行快? (5 个回答)
去年关闭。

据我所理解。串行意味着数据被一个接一个地发送,而不是并行发送多个数据位同时流式传输。

然而,像 SATA 和 USB 3 这样的连接实际上有超过 2 个数据引脚。那么到底串行和并行的真正含义是什么?

usb sata
  • 2 2 个回答
  • 151 Views

2 个回答

  • Voted
  1. Justme
    2021-02-22T00:42:43+08:002021-02-22T00:42:43+08:00

    通信是串行的,为了提高抗噪声能力,数据不是通过单端线发送,而是通过双绞线作为差分信号发送。

    USB3 和 SATA 都具有一对发送对和一对接收对用于高速信号。

    USB3 还具有向下兼容性,因此它具有双向的传统 USB2 数据对。

    • 4
  2. 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 可以做到这一点)。或者,您可以跨多个较低级别的数据包流多路复用单个较高级别的数据流。

    这与单个比特/符号的并行传输根本不同。每个符号仅在一条线上串行传输,符号组被一起视为单个数据包,但数据包再次通过单线串行发送。只有在更高的级别上,您才能将数据拆分为单独的数据包并通过多个通道发送这些数据包。

    因为不只是并行发送单个符号,而且还有更高级别的打包/成帧,所以处理不同车道上的不同旅行时间要容易得多。我们可以将序列号添加到数据包中,因此即使它们相互超越,我们仍然可以按照正确的顺序组装它们。我们可以检测丢失的序列号并要求重传。

    我们的“同步边界”,即我们需要同步并行通道的点要大得多:我们需要对数据包进行同步,这些数据包可以是很多位而不是每个单独的位。所以,我们的“同步时钟”只是线路时钟速度的一小部分。

    • 4

相关问题

  • USB-A 充电器可以使用适配器为 USB-C 笔记本电脑充电吗?

  • Linux lite iso 成功刷入 usb 但无法启动

  • 通过脚本关闭 USB 端口的电源

  • 对作为 USB 2.0 连接到 USB 3.0 端口的 USB 3.0 设备进行故障排除

  • VMware Workstation USB 仲裁服务无法自动启动

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    如何减少“vmmem”进程的消耗?

    • 11 个回答
  • Marko Smith

    从 Microsoft Stream 下载视频

    • 4 个回答
  • Marko Smith

    Google Chrome DevTools 无法解析 SourceMap:chrome-extension

    • 6 个回答
  • Marko Smith

    Windows 照片查看器因为内存不足而无法运行?

    • 5 个回答
  • Marko Smith

    支持结束后如何激活 WindowsXP?

    • 6 个回答
  • Marko Smith

    远程桌面间歇性冻结

    • 7 个回答
  • Marko Smith

    子网掩码 /32 是什么意思?

    • 6 个回答
  • Marko Smith

    鼠标指针在 Windows 中按下的箭头键上移动?

    • 1 个回答
  • Marko Smith

    VirtualBox 无法以 VERR_NEM_VM_CREATE_FAILED 启动

    • 8 个回答
  • Marko Smith

    应用程序不会出现在 MacBook 的摄像头和麦克风隐私设置中

    • 5 个回答
  • Martin Hope
    Saaru Lindestøkke 为什么使用 Python 的 tar 库时 tar.xz 文件比 macOS tar 小 15 倍? 2021-03-14 09:37:48 +0800 CST
  • Martin Hope
    CiaranWelsh 如何减少“vmmem”进程的消耗? 2020-06-10 02:06:58 +0800 CST
  • Martin Hope
    Jim Windows 10 搜索未加载,显示空白窗口 2020-02-06 03:28:26 +0800 CST
  • Martin Hope
    v15 为什么通过电缆(同轴电缆)的千兆位/秒 Internet 连接不能像光纤一样提供对称速度? 2020-01-25 08:53:31 +0800 CST
  • Martin Hope
    andre_ss6 远程桌面间歇性冻结 2019-09-11 12:56:40 +0800 CST
  • Martin Hope
    Riley Carney 为什么在 URL 后面加一个点会删除登录信息? 2019-08-06 10:59:24 +0800 CST
  • Martin Hope
    zdimension 鼠标指针在 Windows 中按下的箭头键上移动? 2019-08-04 06:39:57 +0800 CST
  • Martin Hope
    jonsca 我所有的 Firefox 附加组件突然被禁用了,我该如何重新启用它们? 2019-05-04 17:58:52 +0800 CST
  • Martin Hope
    MCK 是否可以使用文本创建二维码? 2019-04-02 06:32:14 +0800 CST
  • Martin Hope
    SoniEx2 更改 git init 默认分支名称 2019-04-01 06:16:56 +0800 CST

热门标签

windows-10 linux windows microsoft-excel networking ubuntu worksheet-function bash command-line hard-drive

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve