PCIE概述

PCIE概述

文章目录

  • PCIE概述
  • 前言
  • 一、应用场景
  • 二、PCIE理论
    • [2.1 硬件](#2.1 硬件)
    • [2.2 拓扑结构:处理器和设备之间的关系](#2.2 拓扑结构:处理器和设备之间的关系)
    • [2.3 速率](#2.3 速率)
    • [2.4 层次接口](#2.4 层次接口)
    • [2.5 四种请求类型](#2.5 四种请求类型)
    • [2.5.1 bar空间](#2.5.1 bar空间)
    • [2.5.2 memory](#2.5.2 memory)
    • [2.5.3 IO](#2.5.3 IO)
    • [2.5.4 configuration](#2.5.4 configuration)
    • [2.5.5 message](#2.5.5 message)

前言

参考链接:
pcie总线知识点解析

一、应用场景

PC和外设之间需要高速数据大量传输,比如AD/DA数据传输,普通的PC是没有GT接口的,那么就需要用FPGA去实现一个数据获取和传输。

PCIE适合背板(CPU和显卡都插到主板上,这个主板相当于背板。网卡显卡都是通过PCIE进行通信的)通信,即短距离通信(cm级别)。为什么不用万兆网传输,因为应用场景不同,长距离适合光纤稳定数据传输。

二、PCIE理论

2.1 硬件

母座:

公口(金手指):

下面是一个X4的PCIE原理图

2.2 拓扑结构:处理器和设备之间的关系

RC:根节点(主机,发起操作

EP : 从节点(从机,被操作

注意要清楚,FPGA是作为从机的。在立交交互的时候,需要带入理解

PCIE BRIDGE 用于链接传统的PCI总线

LEGACY ENDPOINT:基本不用了

2.3 速率

GT:是实际发送线速率,如果是2.5GT/s, 实际速率为:2.5*8/10/8 = 250MB/s

多lane传输:就是多个gt口进行传输,其中PCIE会将数据进行分发到多lane,在接受是,再汇聚

效率:

  • XDMA的效率为60%
  • RIFFA:支持第三方,效率为75-80%

2.4 层次接口

包结构:

数据链路层:

物理层:

2.5 四种请求类型

先举个例子:

2.5.1 bar空间

type0:ep节点使用(一般为FPGA)

tpye1:switch和RC节点使用

type0上面的配置都是在建立IP时设置;

操作方式:

例如:base addr0写一个基地址,这个基地址对应一个内存,如AXI_FIFO,如果RC想操作这个内存,那么RC也会在自己的空间上建立一个同样大小的空间,RC去操作这个自己建立的空间,就等同于操作AXI_FIFO。(原理就是有了这个基地址,RC通过内存映射,就可以操作到这个基地址的空间)。

2.5.2 memory

数据量大,则使用批量的操作,类似axi-full,一次操作多个地址的数据

2.5.3 IO

数据量小,则使用IO操作,类似于axi-lite的操作方式,一次操作一个地址的数据。或者可以理解为用PCIE点亮fpga中的LED灯

2.5.4 configuration

2.5.5 message

相关推荐
技术小白爱FPGA7 小时前
Xilinx IDDR和 ODDR原语使用和仿真
fpga开发
技术小白爱FPGA8 小时前
Xilinx LVDS 接口中的时钟对齐模块的RTL编写
fpga开发
Anin蓝天(北京太速科技-陈)8 小时前
204-基于Xilinx Virtex-6 XC6VLX240T 和TI DSP TMS320C6678的信号处理板
嵌入式硬件·fpga开发·信号处理
ThreeYear_s21 小时前
基于FPGA的智能电子密码指纹锁(开源全免)
fpga开发·开源
我爱C编程1 天前
【硬件测试】基于FPGA的4FSK调制解调通信系统开发与硬件片内测试,包含信道模块,误码统计模块,可设置SNR
fpga开发·信道模块·snr·4fsk调制解调
正在努力的小河1 天前
FPGA实战篇(按键控制LDE实验)
fpga开发
whik11941 天前
Microsemi Libero SoC免费许可证申请指南(Microchip官网2024最新方法)
fpga开发
Leventure_轩先生1 天前
[Verilog]第一个流水灯项目的一些疑问和思考
fpga开发
∑狸猫不是猫2 天前
数字图像处理(17):RGB与HSL互转
图像处理·计算机视觉·fpga开发
@晓凡2 天前
移植NIOS10.1工程,NIOS10.1路径修改
fpga开发·eclipse·nios ii