在FPGA4FUN上看到一篇介绍PCI-E的帖子,简单易懂,适合入门,特地搬过来

原文地址:http://www.fpga4fun.com/PCI-Express.html

前言:

As PCI Express becomes common place in high-end FPGAs, let's see how easy FPGA vendors made the technology available.

由于PCI-E在高端FPGA中变得越来越常见,我们来看看FPGA厂商们是怎样让它很容易的为我们所用的

In particular, we look more closely at Xilinx's PCI Express solution.

以赛灵思为例

全文分为六个部分,第一部分:

PCI Express - Connector

PCI Express comes commonly in two sizes: 1-lane and 16-lanes, with 1-lane used for regular boards and 16-lanes used for graphic cards.

PCI-E通常分为两种规模:一路的用在常规板子上,16路的用在图形卡上

The connector

The 1-lane connector has 36 contacts, arranged in two rows of 18 contacts.
Here's a top view.


Of the 36 contacts, only 6 are useful to the transport of data, the rest are power pins and other auxiliary signals. The 6 functional contacts are used in 3 pairs:

一路的连接器分成有36个引脚,分成两行,每行18个。在这36个引脚中,只有6个是用作数据传输的,其余的都是电源或者辅助信号。这6个引脚分成3对

  • A clock pair called REFCLK.
  • A receive pair called PER.
  • A transmit pair called PET.


The pairs are often referred as "differential pairs" because each signal from a pair carries the same signal but with one inverted from the other. The reason for using differential pairs is mainly reliability of transmission and will be discussed in more details later.

时钟、数据接收和发送这三对信号线使用差分传输

In PCI Express generation 1 (or simply "Gen1"), the PET and PER pairs have data transmitted at a speed of 2.5Gbps. Gen2 doubles that.

第一代PCI-E数据传输速度为2.5Gbps,第二代为5Gbps。

Looking at the Dragon-E board, we can recognize the PET pair below the FPGA.


To work correctly, the lines in a differential pair need to be electrically coupled and have no impedance discontinuities, which in practice means something like "stay close together" and "no sharp angles". That's the reason for the Dragon-E's PET pair serpentine shape. The other side of the board shows the two other serpentine pairs REFCLK and PER.

为了能正常工作,差分信号线必须要电耦合和阻抗连续,这有点像“靠近一点”和“没有锐角”,这也就是为什么Dragon-E上的差分线看着像蛇形。

PCI Express x16

To allows for more speed, multiple lanes can be used. The REFCLK pair doesn't need to be duplicated, so for example, PCI Express with 2 lanes uses 5 pairs (1 REFCLK + 2 PET + 2 PER).

Graphic boards often use 16 lanes connectors in what is commonly called PCI Express x16.

为了实现更高的速度,我们可以使用通道复用。时钟线不需要复用,举个例子,两通道的PCI-E使用5对线(1路时钟+2路数据发送+2路数据接收),图形卡经常使用16通道连接器。

点名说一下 verilog-IT大道,转了我多少篇博客,也不标明出处。这篇文章我刚发出去就被转载了,你们的爬虫很厉害啊!

PCI Express(一)- Connector的更多相关文章

  1. PCI Express(二) - Topology

    原文出处:http://www.fpga4fun.com/PCI-Express2.html Point-to-point architecture At 2.5Gbps, the PCI Expre ...

  2. [中英对照]How PCI Express Works | PCIe工作原理

    How PCI Express Works | PCIe工作原理 PCI Express is a high-speed serial connection that operates more li ...

  3. PCI Express(六) - Simple transactions

    原文地址:http://www.fpga4fun.com/PCI-Express6.html Let's try to control LEDs from the PCI Express bus. X ...

  4. PCI Express(五) - Xilinx wizard

    原文地址:http://www.fpga4fun.com/PCI-Express5.html Xilinx makes using PCI express easy - they provide a ...

  5. PCI Express(四) - The transaction layer

    原文出处:http://www.fpga4fun.com/PCI-Express4.html 感觉没什么好翻译的,都比较简单,主要讲了TLP的帧结构 In the transaction layer, ...

  6. PCI Express(三) - A story of packets, stack and network

    原文出处:http://www.fpga4fun.com/PCI-Express3.html Packetized transactions PCI express is a serial bus. ...

  7. Down to the TLP: How PCI express devices talk (Part II)

    http://xillybus.com/tutorials/pci-express-tlp-pcie-primer-tutorial-guide-2 Data Link Layer Packets A ...

  8. Down to the TLP: How PCI express devices talk (Part I)

    http://xillybus.com/tutorials/pci-express-tlp-pcie-primer-tutorial-guide-1 Down to the TLP: How PCI ...

  9. Ubuntu 16.04 RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller” 不能上网

    来源:http://forum.ubuntu.org.cn/viewtopic.php?f=116&t=463646 1.执行如下命令 uname -a sudo lspci -knn sud ...

随机推荐

  1. Python OpenCV —— Modifying

    一些索引和修改图像像素点数据等的操作,可打印观察运行结果. # -*- coding: utf-8 -*- """ Created on Wed Sep 28 00:11 ...

  2. python模块之collections

    我们都知道,Python拥有一些内置的数据类型,比如str, int, list, tuple, dict等, collections模块在这些内置数据类型的基础上,提供了几个额外的数据类型: (1) ...

  3. Ubuntu远程连接windows

    一般情况下都是使用windows系统,通过mstsc远程连接linux系统,但对于一些linuxer来说,有时候需要远程连接一下windows,最后采用的是rdesktop,一个非常好用的工具 sud ...

  4. IOS7.0 Xcode5 AutoLayout 备忘录

    Xcode5 xib设置autolayout方式: 列表1: (选择两个view时可设置) 左边对齐, 右边对齐, 顶部对齐, 底部对齐, x轴中心对齐, y轴中心对齐, 文本底标线对齐, (单选择一 ...

  5. False Discovery Rate, a intuitive explanation

    [转载请注明出处]http://www.cnblogs.com/mashiqi Today let's talk about a intuitive explanation of Benjamini- ...

  6. maven 基本常识以及命令

    Maven库: http://repo2.maven.org/maven2/ Maven依赖查询: http://mvnrepository.com/ Maven常用命令: 1. 创建Maven的普通 ...

  7. js中Math.round、parseInt、Math.floor和Math.ceil小数取整总结

    Math.round.parseInt.Math.floor和Math.ceil 都可以返回一个整数,具体的区别请看下面的总结. 一.Math.round 作用:四舍五入,返回参数+0.5后,向下取整 ...

  8. Thrift 个人实战--Thrift 网络服务模型

    前言: Thrift作为Facebook开源的RPC框架, 通过IDL中间语言, 并借助代码生成引擎生成各种主流语言的rpc框架服务端/客户端代码. 不过Thrift的实现, 简单使用离实际生产环境还 ...

  9. [BZOJ 3209]花神的数论题

    一道简单的数位 dp 题 但是脑子里只有 __builtin_popcountll 了呢(自重) 看完题解后很快就理解了,而且有一种这么简单的题居然没想到做法真是不应该唉~的感觉 用 f[i] 表示 ...

  10. javac

    http://openjdk.java.net/groups/compiler/ http://crazyjavahacking.org/tag/javac/ http://openjdk.java. ...