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

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

3天内不再提示

串行总线的优缺点优点

OpenFPGA 来源:OpenFPGA 作者:碎碎思 2021-10-15 10:10 次阅读

串行总线技术(一)-串行总线结构(以PCIe为例)串行总线的出现在早期的计算机系统中,多数外围设备使用并行总线结构。这些总线包括PCI和PATA(并行ATA)。当通信速率较低时,并行总线结构可以设计得非常简单和有效,可以连接大量外围设备。通过使用中央仲裁机制,可以方便地实现总线设备间的通信:然而,当速率和带宽不断增加时,并行结构的潜力不断被发掘并不再能够满足系统设计要求。

并行总线结构的带宽可以通过增加总线宽度或者提高总线的工作频率来实现,但这种增加带宽的方式会逐渐变得困难。并行总线会占用很多引脚,而对现代数字芯片来说,单一芯片中集成了大量的功能,引脚本身就是一种非常紧张的资源,这为继续增加总线宽度带来了困难。

另外,总线频率已经进行了多次增加(如PCI--》PCIX),继续对大量信号线提高工作频率也变得更加困难。除此之外,并行结构还有一些固有不足,如没有包的概念,没有错误检验机制等。在并行总线中,传输的是数据突发片段,不是完整的数据包,也没有与所传输数裾相关的CRC校验结果以进行差错控制。并行总线的不足促进串行总线结构的发展,这不仅克服了原有的缺陷,还带来了其他好处。如图所示为并行总线与串行总线示例。

现在的数字系统中有很多种串行总线。PCI Express(代替了并行PCI总线)、SATA(代替PATA)以及USB等就是一些常用的高速总线。这些总线的速率也从MHz达到了GHz。

串行总线的优缺点优点

占用引脚数量少

串行总线使用一对信号线发送数据(TX+ TX-),使用一对信号线接收数据(RX+ RX-)。而PCI和PCIX等并行总线会占用大量引脚。

差分信号

TX和RX信号线上采用的是差分信号传输方式,这种传输方式具有很高的抗噪声能力。

强错误检测能力

串行协议使用基干包的数据传输方式,对数据包采用了CRC校验。相比于PCI中采用的奇偶校验,CRC校验具有很强的检错能力。

纠错与恢复

因为采用基于包的传输方式并且带有CRC校验,接收设备能够检测出接收数据包中的错误并通知发送端出现了传输错误,发送端可以重新发送出现错误的数据包。

全双工数据和控制流

数据包可以在TX信号线上传输,同时可以在RX信号线上接收控制信息。SATA使用类似HOLD的流控原语来实时阻止数据发送以避免数据溢出。

分割式数据传输

在分割式数据传输中,request和completion可以不出现在同一个数据传输操作中。这不是串行总线所特有的必要特征。所有的串行总线都使用包和分割式数据传输协议进行数据传输。多数早期的并行总线(PCI、AHB)不支持分割式数据传输。最新的并行总线,如AXI开始支持这一协议。

缺点

串行总线也存在一些不利之处。

只支持点到点连接

通过串行总线只能连接两个设备,而对于并行总线,可以在单一总线上连接多个设备,并目。很容易增减总线上的设备。对于串行总线,我们需要使用交换机和多个总线设备连接。

更大的延迟

由于串行及分层结构特点,串行结构的总线延迟更大一些。

串行总线结构串行总线结构只允许点到点连接,一条串行总线只能连接两个设备,而并行总线可以同吋连接多个设备。在串行总线结构中,总线设备中需要包括两个基本电路部件:MAC控制器(通常简称为控制器)和PHY(主要实现模拟收发功能)。MAC具有分层结构,通常包括三个层次。PHY包括两个部分:PCS和PMA。PCS(Physical Coding Sublayer,物理编码子层)主要实现编解码等数字逻辑功能。PMA主要实现时钟恢复、均衡和信号电平检测等模拟功能。

下面我们将以PCIe和SATA为例,对串行总线结构加以分析。

MAC控制器包括三个层次:PHY逻辑层 、 数据链路层和事务层。每一层都有自己特定的功能。

PHY逻辑层

两个相互联接设备的PHY逻辑层之间使用PHY层包进行通信,称为有序训练集合,如图所示。PHY层包被用于建立链路和确定交互的操作速度,在训练阶段结束时,双方进入连接阶段,此时它们已经做好了传输数据链路层和事务层包的准备。PHY层包产生于PHY层,终结于另一侧的PHY逻辑层,不会上交给其他层次。

数据链路层

数据链路层使用短的、固定长度(2个dword/8字节)的包在两个设备间交互链路信息,如图所示。这些包也被称为DLLP(Data Link Layer Packet,数据链路层包)。DLLP被用于交换信用信息、ACK、NAK和功率管理协议。DLLP在本层产生,终止于对端的同一层,不会进一步向上提交。

事务层

本层在两个设备间进行实际的数据交互,如下图所示。这些包被称为TLP(Transaction Layer Packet,事务层包),TLP为变长包。TLP包括头域、数据净荷和CRC校验。一个TLP由start-of-packet符号开始,以END符号结束。

串行总线时钟在PCIe中,平台提供100MHz参考时钟,通过PCIe插槽提供给总线设备。PCIe端点设备从PCIe连接器处获取该参考时钟并将其交给PHY PMA层。PMA内部有一个PLL,它根据输入的100MHz时钟和输入的RX数据流生成250MHz的时钟PCLK。PHY将PCLK提供给MAC发送数据(从MAC到PHY)和接收数据(从PHY到MAC)都同步于PCLK。对于PCIe,MAC的接收和发送电路工作在同一个时钟域。对于其他串行总线结构,如SATA收发电路时钟可能不同。在SATA中,发送和接收时钟是不同的,属于异步时钟。

发送路径的微结构MAC和PHY PCS之间的接口是标准的,虽然这不一定必要,但标准化有利于IP核的开发,可提高不同芯片厂商IP核之间的互操作性。对于PCIe来说,该接口被称为PIPE接口。

MAC提供的发送数据的位宽为8比特或16比特。PCLK的频率与数据总线的位宽有直接关系,数据位宽为8比特时,PCLK为250MHz数据位宽为16比特时,PCLK为125MHz,如图所示。

这两个频率是PCIe Genl所使用的,在Gen2中,二者都进行了翻倍。位宽变换电路模块可以将16比特的数据位宽转换成8比特的位宽,接着将其送入8b/10b编码器。编码器将每个8比特的数据转换成为10比特的编码值并将其传递到PHY的PMA层。PMA层使用一个高速时钟(Genl时为2.5GHz,Gen2时为5GHz)进一步将10比特的编码结果转换为单比特串行数据并通过TX信号线发出。

接收路径的微结构PMA接收电路实现比特提取和串并变换功能,将单比特的串行接收数据变换成为10比特的并行数据。

10比特的数据流从PMA接收电路进入PCS接收电路。此时的10比特数据流并非是字符对准的。在PCS内部,10比特数据流先后进入字符对准电路、弹性缓冲区、10b/8b解码电路并最终进入可选的8b/16b转换电路。

字符对准

PCIe接收的数据是以10比特的字符为组成单位的。PMA接收电路将接收数据组成10比特字符时没有按照字符边界进行。字符对准逻辑电路查找COMMA字符并以它为基础进行字符边界对准。对准后的字符流被送入弹性缓冲区,如图所示。

弹性缓冲区

PCIe链路两端所使用时钟的标称值均为250MHz。它们可以使用平台提供的同一个时钟,或者选择它们自带的时钟源来生成250MHz的工作时钟。当使用相互独立的时钟时,它们之间会有微小的偏差(偏差可能非常微小,但不会为0),此时,经过一段时间之后,会造成数据的上溢或下溢。总线一端的时钟频率可能比另一端略微高一些,频率低的一端会出现数据缓冲区上溢,频率高的一端会出现数据缓冲区下溢。串行总线中使用弹性缓冲区来处理时钟频率上的微小差别。我们将对PCIe和SATA中的弹性缓冲区加以介绍。

位宽为10比特的接收符号流被写入一个FIFO。按照PCIe协议,在发送数据时,会按照一定的间隔定期发送填充包(称为SKIP集合)。这些填充包可以在不影响数据净荷、编码/解码、扰码/解扰码的情况下快速插入和去除。写入逻辑持续将10比特的字符写入FIFO,读岀逻辑持续将FIFO中的字符读出。如果写入速度比读出速度快,FIFO中的数据深度将逐渐增加。

当FIFO中的数据深度达到了预先设定的上限时,写入逻辑会丢弃1个或多个SKIP字符。类似地,当写入速度低于读出速度时,FIFO中的数据深度会逐渐降低,当深度降至预先设定的下限时,读出逻辑不再从FIFO中读出数据,它会暂停读出数据,同时向数据通路中插入一个SKIP符号。这里的FIFO就是弹性缓冲区,其内部数据深度是变化的,可以用于调整读写时钟频率的微小偏差,如图所示。

需要说明的是,这种工作机制可以用于处理微小的读写频率偏差,不适合处理较大的频率偏差(较大的时钟偏差需要深度较大的弹性缓冲区并且会引入较大的延迟)。规范中对频率偏差会提出限制,例如,PCIe中的频率偏差应小于300PPM。当时钟偏差被限定在一定PPM之内时,SKIP出现的间隔就可以计算得到。

SATA使用了类似的机制,它会在每256个双字之间插入两个ALIGH原语。ALIGN原语根据两边的频率差可以快速地被丢弃或插入。

10b/8b解码和8b/16b转换

弹性缓冲区的输出进入解码器电路,它会将10比特的字符转换成为8比特的数据。如果PCS-MAC接口数据通道宽度为16比特,那么需要将两个连续的8比特数据拼接起来构成16比特的数据并送给接收MAC如果数据通路宽度为8比特,那么不需要做任何处理,直接送给接收MAC。

责任编辑:haq

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

    关注

    0

    文章

    230

    浏览量

    33530
  • 总线
    +关注

    关注

    10

    文章

    2702

    浏览量

    87203

原文标题:串行总线技术(一)-串行总线结构(以PCIe为例)

文章出处:【微信号:Open_FPGA,微信公众号:OpenFPGA】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    什么是时分双工和频分双工?各有什么优缺点

    什么是时分双工和频分双工?各有什么优缺点? 时分双工和频分双工是在通信中使用的两种常见的双工通信技术。它们分别使用时间和频率来实现同时双向通信,每种技术都有其独特的优缺点。以下是关于时分双工
    的头像 发表于 02-01 16:57 1075次阅读

    有铅锡膏的优缺点

    不同的合金成分、不同的锡粒径和不同的金属含量,以满足客户对不同产品和工艺的要求。接下来佳金源锡膏厂家来为大家说一下优缺点:一、有铅锡膏的优点:1、焊接强度高,导电性好,可
    的头像 发表于 01-25 15:51 361次阅读
    有铅锡膏的<b class='flag-5'>优缺点</b>

    LoRa与NB-IoT在物联网应用的优缺点

    们在许多方面都有不同的优缺点。在本文中,我们将详细讨论LoRa与NB-IoT在物联网应用中的优点缺点。 首先,我们来看看LoRa的优点。LoRa是一种长程、低功耗的无线通信技术,具有
    的头像 发表于 12-15 10:31 1040次阅读

    WLAN和蜂窝网络的优缺点

    将详细讨论这两种技术的优缺点。 WLAN的优点: 1. 速度:WLAN通常具有更高的传输速度,特别是在高速无线局域网标准下,速度可以达到几百兆比特每秒。这意味着用户可以更快地下载和上传文件、观看高清视频等。 2. 低延迟:WLAN技术具有较低的延迟,这意味着数据可以在无
    的头像 发表于 12-11 11:26 1020次阅读

    钽电容的优点缺点

    钽电容的优点缺点 钽电容是一种电子元件,它具有许多优点缺点。在这篇文章中,我们将详细介绍钽电容的优点
    的头像 发表于 12-08 11:35 1250次阅读

    SPI与I2C的异同及优缺点

    SPI与I2C的异同及优缺点  SPI(Serial Peripheral Interface)和I2C(Inter-Integrated Circuit)是两种常见的串行通信接口协议,用于
    的头像 发表于 12-07 10:46 1417次阅读

    铜包铝电线的优缺点 铜包铝电线和纯铜电线的区别

    铜包铝电线的优缺点 铜包铝电线和纯铜电线的区别  铜包铝电线的优缺点和铜电线的区别 引言: 铜包铝电线是一种常见的导电材料,其由铜包封在铝中制成。与传统的纯铜电线相比,铜包铝电线具有一些特殊的优点
    的头像 发表于 11-22 17:45 1.2w次阅读

    单电源的优缺点 为什么我们在实际设计中会选择单电源系统呢?

    景和设计要求来决定。在本文中,将详细介绍单电源和双电源的优缺点以及为什么我们在实际设计中会选择单电源系统。 单电源的优缺点 单电源是一种电源系统,它只有一个电源源。单电源的主要优点包括: 1. 维护简单:单电源只有一个电源,
    的头像 发表于 10-29 14:21 1030次阅读

    共源共栅Cascode以及级联Cascade的优缺点是什么?

    共源共栅Cascode以及级联Cascade的优缺点是什么? 共源共栅Cascode以及级联Cascade是常用的放大电路架构,它们在不同应用场合中具有不同的优缺点。在本文中,我们将就这些架构列举
    的头像 发表于 09-18 15:08 5159次阅读

    I2C串行总线协议是什么?I2C总线有哪些优点

    I2C串行总线协议是什么?I2C总线有哪些优点? I2C(Inter-Integrated Circuit)是一种串行
    的头像 发表于 09-12 11:18 810次阅读

    igbt的优缺点介绍

    igbt的优缺点介绍 IGBT的优缺点介绍 IGBT是一种晶体管,是MOSFET和BJT集成而成的开关,具有高速开关能力和较低的导通电阻,用于高效率的功率调节。IGBT具有一些优点缺点
    的头像 发表于 08-25 15:03 4813次阅读

    石墨烯电池的优缺点是什么?

    。本文将深入分析石墨烯电池的优缺点。 一、石墨烯电池的优点 1. 高能量密度 石墨烯电池的能量密度远高于普通电池,可以提供更长的使用时间。石墨烯电池的能量密度达到了普通锂离子电池的两倍以上,这意味着它们能够为移动设备等
    的头像 发表于 08-22 17:06 3.2w次阅读

    数字电源和开关电源的优缺点

    电源的优缺点 数字电源是一种基于数字信号处理的电源。它使用数字信号控制模拟电路的输出,可以实现很高的精度和可编程性。数字电源有以下优缺点: 1. 优点: (1)高精度:数字电源使用数字信号控制模拟电路的输出,具有高精度
    的头像 发表于 08-18 15:01 1463次阅读

    共地和分地的优缺点

    共地与分地并没有硬性规定,可以按需求自己设计。这里归纳一下他们的优缺点。 分地不容易短路。但是地与地与正极与负载之间容易形成电压差。形成奇怪的故障现象。 共地,拥有稳定的二进制表现,即稳定的直流表现
    发表于 06-27 16:48

    双电芯电池的优缺点

    双电芯电池是一种由两个电池单元组成的电池。这种电池通常由两个相同的电池单元并联而成,以提供更高的电压和/或更长的使用时间。与单电池相比,双电芯电池具有许多优点和一些缺点。本文将介绍双电芯电池的优缺点
    的头像 发表于 06-20 17:29 8199次阅读