PCIe在传输中用8b/10b编码,所以单PCEe2.0的有效带度是4Gb/s

x2模式将用于内部接口而非插槽模式

PCIe卡能使用在至少与之传输通道相当的插槽上(例如x1接口的卡也能工作在x4或x16的插槽上)。一个支援较多传输通道的插槽可以建立较少的传输通道(例如8个通道的插槽能支援1个通道)。PCIe设备之间的链接将使用两设备中较少通道数的作为标准。一个支援较多通道的设备不能在支援较少通道的插槽上正常工作,例如x4接口的卡不能在x1的插槽上正常工作(插不入),但它能在x4的插槽上只建立1个传输通道(x1)。PCIe卡能在同一数据传输通道内传输包括中断在内的全部控制信息。这也方便了与PCI的兼容。多传输通道上的数据传输采取交叉存取,这意味着连续字节交叉存取在不同的通道上。这一特性被称之为“数据条纹”,需要非常复杂的硬件支援连续数据的同步存取,也对链接的数据吞吐量要求极高。由于数据填充的需求,数据交叉存取不需要缩小数据包。与其它高速数传输协议一样,时钟信息必须嵌入信号中。在物理层上,PCIe采用常见的8B/10B代码方式来确保连续的1和0字符串长度符合标准,这样保证接收端不会误读。编码方案用10位编码比特代替8个未编码比特来传输数据,占用20%的总带宽。到了PCIe 3.0,采用128B/130B代码方式,仅占用1.538%的总带宽。

PCIe有1x,2x,4x,8x甚至16x之分。也有end point和root complex,end point是作从机来用,root complex是作主机来用。DM8168是x2的,能作为一个x1或者一个x2来使用。而且可以配置成主从两种模式。DM8168文档说明如下:

One PCI Express® (PCIe®) 2.0 Port With
Integrated PHY
– Single Port With or Lanes at 5.0 GT/s
– Configurable as Root Complex or Endpoint

具体配置应该由PL_GEN2来完成是使用x1还是x2。

如果要配置成x1,只能使用Lane0,关于这点请参考下面的说明。
17.1.5 Supported Use Case Statement
The PCIe subsystem has only one interface link and this link can be used in a x1 or x2 lane arrangements
connecting to only one single device. In other words, there exists no support for connecting to two devices
in an x1 arrangement since it has the support of a single interface link. It also means that it cannot be
used as a switch. Lane 0 must always be connected and functioning, either alone or in conjunction with
Lane 1, for the link to be established. Lane 1 cannot be used alone.
请参考Technical Reference Manual
如果要配置成x1,只能使用Lane0,关于这点请参考下面的说明。
17.1. Supported Use Case Statement
The PCIe subsystem has only one interface link and this link can be used in a x1 or x2 lane arrangements connecting to only one single device. In other words, there exists no support for connecting to two devices in an x1 arrangement since it has the support of a single interface link. It also means that it cannot be used as a switch. Lane must always be connected and functioning, either alone or in conjunction with
Lane , for the link to be established. Lane cannot be used alone.
请参考Technical Reference Manual

  

PCIE学习的更多相关文章

  1. PCIe学习笔记(15)--- TLP的ROUTING方式

    PCIE是POINT TO POINT的,不像PCI,是SHARED-BUS,总线上的数据,是被所有EP DEV看到的. 这一点与USB2.0比较类似,是广播方式的(BROADCASTING) USB ...

  2. PCIE学习链接集合

    <PCIE基础知识+vivado IP core设置> https://blog.csdn.net/eagle217/article/details/81736822 <一步一步开始 ...

  3. PCIE学习笔记--TLP Header详解(三)

    目录篇地址为:http://blog.chinaaet.com/justlxy/p/5100053481 Completions Completions的TLP Header的格式如下图所示: 这里来 ...

  4. PCIE学习笔记--PCIe错误源详解(二)

    转载地址:http://blog.chinaaet.com/justlxy/p/5100057799 这篇文章主要介绍事务(Transaction)错误.链路流量控制(Link Flow Contro ...

  5. FPGA实战操作(2) -- PCIe总线(协议简述)

    目录 1. PCIe基础知识 2. 事务层协议 2.1 数据包结构 2.2 帧头含义详述 3. 报文举例 3.1 寄存器读报文 3.2 完成报文 4. 机制简述 4.1 Non-Posted和Post ...

  6. FPGA实战操作(2) -- PCIe总线(例程设计分析)

    1.框架总览 平台:vivado 2016.4 FPGA:A7 在实际应用中,我们几乎不可能自己去编写接口协议,所以在IP核的例程上进行修改来适用于项目是个不错的选择. 通过vivado 中有关PCI ...

  7. 汲取营养的blog专栏

    网路上博客专栏是学习提升.思考深化的好途径,目前发现的博客价值高的平台: (1)EETOP www.eetop.cn (2)CSND www.csdn.net (3)cnblog www.cnblog ...

  8. NCCL(Nvidia Collective multi-GPU Communication Library) Nvidia英伟达的Multi-GPU多卡通信框架NCCL 学习;PCIe 速率调研;

    为了了解,上来先看几篇中文博客进行简单了解: 如何理解Nvidia英伟达的Multi-GPU多卡通信框架NCCL?(较为优秀的文章) 使用NCCL进行NVIDIA GPU卡之间的通信(GPU卡通信模式 ...

  9. 转载:使用Xilinx IP核进行PCIE开发学习笔记(一)简介篇

    https://zhuanlan.zhihu.com/p/32786076 最近接触到一个项目,需要使用PCIE协议,项目要求完成一个pcie板卡,最终可以通过电脑进行通信,完成电脑发送的指令.这当中 ...

随机推荐

  1. Codeforces Round #232 (Div. 2) D. On Sum of Fractions

    D. On Sum of Fractions Let's assume that v(n) is the largest prime number, that does not exceed n; u ...

  2. dubbo+zookeeper集群配置

    集群服务注册到多台zookeeper配置: <dubbo:registry protocol="zookeeper" address="10.20.153.10:2 ...

  3. C# CRC-CCITT (Kermit)校验方法

    using System; public enum Crc16Mode : ushort { Standard = 0xA001, CcittKermit = 0x8408 } public clas ...

  4. For Your Dream

    队名:Braveheart 队员介绍: 队长:李洋洋 队员:姚欢,杨仁波,张波,乔闯 项目名称:数据沈航 总体任务: 收集整理学校的数据,为每个想要了解沈航的人展现一份我们收集来的信息 项目分组: ( ...

  5. Android test---JUnit

    JUnit 单元测试 Android的单元测试基础也是比较简单,同样还是测试相加方法是否正确,测试用例还是用1+1?=2来个简单的Android单元测试: 1..打开eclipse,新建一个proje ...

  6. oracle修改字段长度

    alter table 表名 modify (字段名 字段类型长度);alter table cachemsg modify (callernum varchar(40));

  7. webApi上传下载文件

    上传文件通过webApi html端调用时包含(form提交包含 enctype="multipart/form-data",才可以启作用获取到文件) public class U ...

  8. ASP.NET生成WORD文档,服务器部署注意事项

    网上转的,留查备用,我服务器装的office2007所以修改的是Microsoft Office word97 - 2003 文档这一个. ASP.NET生成WORD文档服务器部署注意事项 1.Asp ...

  9. 使用Birt开发报表

    间隔一段时间未使用Birt开发报表后,本文章记录Birt开发报表的常遇到的开发问题及解决措施,方便自己和园内其他朋友学习. 一.Birt连接数据库配置 1.连接DB2数据库: 1.1.birt的数据连 ...

  10. 【转】ELK(ElasticSearch, Logstash, Kibana)搭建实时日志分析平台

    [转自]https://my.oschina.net/itblog/blog/547250 摘要: 前段时间研究的Log4j+Kafka中,有人建议把Kafka收集到的日志存放于ES(ElasticS ...