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

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

3天内不再提示

PCIe物理层实现了一对收发差分对,可以实现全双工的通信方式

SwM2_ChinaAET 来源:未知 作者:李倩 2018-05-31 09:16 次阅读

首先,回顾一下,之前看了很多遍的PCIe的Layer结构图:

PCIe中的物理层主要完成编解码(8b/10b for Gen1&Gen2,128b/130b for Gen3 and later)、扰码与解扰码、串并转换、差分发送与接收、链路训练等功能。其中链路训练主要通过物理层包Ordered Sets来实现。

PCIe Spec将物理层分为两个部分——逻辑子层和电气子层,如下图所示:

如上图所示,PCIe物理层实现了一对收发差分对,因此可以实现全双工的通信方式。需要注意的是,PCIe Spec只是规定了物理层需要实现的功能、性能与参数等,置于如何实现这些却并没有明确的说明。也就是说,厂商可以根据自己的需要和实际情况,来设计PCIe的物理层。下面将以Mindshare书中的例子来简要的介绍PCIe的物理层逻辑部分,可能会与其他的厂商的设备的物理层实现方式有所差异,但是设计的目标和最终的功能是基本一致的。

物理层逻辑子层的发送端部分的结构图如下图所示:

在进行8b/10b编码之前,Mux会对来自数据链路层的数据中插入一些内容,如用于标记包边界或者Ordered Sets的控制字符和数据字符。为了区分这些字符,Mux为其对应上一个D/K#位(Data or Kontrol)。

注:图中还包含了Gen3的一些实现,不过这里只介绍Gen1 & Gen2,并不会介绍Gen3。如果大家感兴趣的,可以去阅读Mindshare的书籍或者参考PCIe Gen3的Spec。

Byte Striping将来自Mux的并行数据按照一定的规则(后面会详细地说)分配到各个Lane上去。随后进行扰码(Scrambler)、8b/10b编码、串行化(Serializer),然后是差分发送对。

其中扰码器(Scrambler)是基于伪随机码(Pesudo-Random)的异或逻辑(XOR),由于是伪随机码,所以只要发送端和接收端采用相同的算法和种子,接收端便可以轻松地恢复出数据。但是,如果发送端和接收端由于某些原因导致其节拍不一致了,此时便会产生错误,因此Gen1和Gen2的扰码器(Scrambler)会周期性地被复位。

注:关于8b/10b的原理和作用,在我之前的博文中有所介绍。所以接下来的文章中不会重复介绍这些内容,但是会简要地介绍PCIe中的8b/10b的实现细节和要点。

物理层逻辑子层的接收端部分的结构图如下图所示:

由于PCIe采用的是一种Embeded Clock(借助8b/10b)机制,因此接收端在接收到数据流时,首先要从中恢复出时钟信号,这正是通过CDR逻辑来实现的。如上图所示,接收端的逻辑基本上都是与发送端相对应的相反的操作。这里就不在详细地介绍了。

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

    关注

    0

    文章

    42

    浏览量

    10488
  • PCIe
    +关注

    关注

    15

    文章

    1234

    浏览量

    82578
  • 物理层
    +关注

    关注

    1

    文章

    148

    浏览量

    34359

原文标题:【博文连载】PCIe扫盲——物理层逻辑部分基础(一)

文章出处:【微信号:ChinaAET,微信公众号:电子技术应用ChinaAET】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    HAL库的串口收发函数,HAL的串口DMA方式下不能实现独立的全双工通信吗?

    昨天看HAL库的串口收发函数,DMA方式,发现函数里竟然有收发同步的操作,但不太确定,莫非HAL的串口DMA方式下不能实现独立的
    发表于 05-14 06:17

    PCIe般介绍

    PCIe提供种可裁减高速串行I/O点到点的总线连接。PCIe的LAN是全双工的通道,由
    发表于 06-03 07:09

    全双工无线系统的实现

    更高。但是,仍然存在个很大的限制因素:无线电设备仍旧无法在个频率上同时收发信号。这种在相同频率上同时收发的能力叫做全双工,对于无线网来说
    发表于 07-11 07:17

    通信基础知识:单工,半双工全双工

    是两个单工通信方式的结合,它要求发送设备和接收设备都有独立的接收和发送能力;在同时间可以同时接受和发送信息,实现双向
    发表于 09-30 11:37

    如何对PCIe 3.0接收机物理层进行测试?

    如何对PCIe3.0接收机物理层进行测试?
    发表于 05-11 06:04

    串口通信物理层与协议的相关资料推荐

    .串口通信物理层与协议物理层规定通讯系统的机械、电子特性(相当于规定
    发表于 02-17 07:07

    用于RS485全双工的LPUART,以半双工方式连接时出现回声怎么解决?

    设法实现完美无瑕的通信。但是,我们还必须将 RS485 中的电路板与基于半双工的产品连接起来。为此,我们在电路板连接器上将收发器的 A 到
    发表于 04-06 06:37

    WiMAX物理层技术特征及其OFDM和OFDMA技术的应用

    WiMAX物理层的技术特点: (1)在物理层采用正交频分复用,实现高效的频谱利用率。 (2)双工方式 (3)可支持移动和固定的情况
    发表于 12-13 08:42 2758次阅读
    WiMAX<b class='flag-5'>物理层</b>技术特征及其OFDM和OFDMA技术的应用

    PCIe物理层的基本概念

    需要注意的是,PCIe物理层处理可以转发LTP和DLLP之外,还可以直接发送命令集(Ordered Sets)。之所以称其为命令集,是因为它并不是真正意义上的包(Packet),因为
    的头像 发表于 05-02 10:06 1.1w次阅读
    <b class='flag-5'>PCIe</b><b class='flag-5'>物理层</b>的基本概念

    PCIe物理层接口定义物理层中的,媒介物理编码子之间的统接口

    随着高速串行技术的发展,各种串行通信技术的物理层逐渐走向,用户甚至可以基于FPGA中的SerDes/PCS完成多种高速串行
    的头像 发表于 09-07 11:42 8813次阅读
    <b class='flag-5'>PCIe</b><b class='flag-5'>物理层</b>接口定义<b class='flag-5'>了</b><b class='flag-5'>物理层</b>中的,媒介<b class='flag-5'>层</b>和<b class='flag-5'>物理</b>编码子<b class='flag-5'>层</b>之间的统<b class='flag-5'>一</b>接口

    通信接口利用RS-485物理层实现飞机防雷保护

    现代航空器采用电传操纵系统进行飞行控制。电传操纵意味着飞控计算机输入或飞行员手动输入以电气方式传输到控制飞控执行器的伺服电机。这些飞控系统的通信接口可以在RS-485物理层
    的头像 发表于 04-26 16:56 2883次阅读
    <b class='flag-5'>通信</b>接口利用RS-485<b class='flag-5'>物理层</b><b class='flag-5'>实现</b>飞机防雷保护

    SWIPT MIMO全双工系统中的物理层通信优化综述

    研究多输入多输出通信系统中同时存在无线信息与能量时的安全传输问题。在源端和全双工节点发送端的发送总功率、全双工节点接收端的能量收集限制2种约束条件下,设计人工噪声与全双工节点接收端的能
    发表于 06-02 11:51 3次下载

    ZLG致远电子新代车载以太网全双工物理层转换器发布

    VBNET系列车载以太网转换器是款高 性能车载以太网至普通以太网点对点转换工具,可实现1000Base-T1和1000Base-Tx之间全双工物理层转换,是汽车车载以太网高效交互的理
    发表于 06-27 11:28 1004次阅读
    ZLG致远电子新<b class='flag-5'>一</b>代车载以太网<b class='flag-5'>全双工</b><b class='flag-5'>物理层</b>转换器发布

    如何搞定通信物理层物理层包含哪些内容?如何落地实现呢?

    通信物理层通信系统的基础,其任务是将数字信息转换为模拟信号并传输到接收端,然后将模拟信号转换回数字信息。
    的头像 发表于 11-20 10:12 1873次阅读
    如何搞定<b class='flag-5'>通信物理层</b>?<b class='flag-5'>物理层</b>包含哪些内容?如何落地<b class='flag-5'>实现</b>呢?

    SATA主机协议的物理层实现过程

    这里讲解SATA主机协议的物理层实现过程。
    的头像 发表于 10-22 15:17 269次阅读
    SATA主机协议的<b class='flag-5'>物理层</b>的<b class='flag-5'>实现</b>过程