
PCIE
文章平均质量分 69
IC小鸽
死磕细节,专注设计,微信公众号icxiaoge
展开
-
PCIe 调试 执行retrain
PCIe如何进行retrain原创 2025-03-30 17:55:59 · 332 阅读 · 0 评论 -
PCIe Gen4 ltssm协商过程
本章节我们以gen4 Endpoint为例介绍PCIe ltssm(链路状态机)协商过程。原创 2024-09-01 11:14:00 · 1533 阅读 · 0 评论 -
PCIe 复位:必须了解的PERST#
PERST#作为 Fundamental Reset,是直接通过边带信号PERST#(PCI Express Reset)产生的。原创 2024-09-01 10:58:03 · 5013 阅读 · 0 评论 -
PCIe 复位:hot reset
热复位(Hot Reset)是一种In-band 复位,其并不使用边带信号。PCIe设备通过向其链路(Link)相邻的设备发送数个TS1 Ordered‐Set(其中第五个字符的bit0为1)来完成复位操作。如下图所示,这些TS1OS在所有有效通道(Lane)上同时发送,并至少持续2ms。原创 2024-08-11 22:44:03 · 1428 阅读 · 0 评论 -
PCIe 6.0为什么需要14-bit tag
在PCIe TLP(Transaction Layer Packet)中,tag是分配给特定Non-Posted Request的编号,协议要求CPL/CPLD中的tag 与对应non-post request TLP中的tag保持一致,因此Requester可以使用tag来识别CPL/CPLD是哪个请求对应的完成报文。图1 memory请求头格式如图1(PCIe 5.0协议图2-17和图2-18)所示,当时使用10-bit tag时,{T9,T8,Tag[7:0]}组成10-bit tag。原创 2024-07-25 22:28:47 · 1537 阅读 · 0 评论 -
PCIe物理层_CTLE(continuous time linear equalizer)
物理层均衡之CTLE原创 2024-06-30 22:15:45 · 1527 阅读 · 0 评论 -
PCIe debug设计:锁存ltssm 状态机
PCIe debug设计原创 2024-04-27 20:12:28 · 738 阅读 · 0 评论 -
PCIE问题定位000:PCIe需要的定位手段
PCIe 设计需要了解的debug设计原创 2024-03-17 22:02:52 · 833 阅读 · 0 评论 -
PCIE知识点-022:PCIe 参考时钟结构
本文描述了PCIe设计的3种参考时钟结构原创 2023-05-28 17:30:50 · 5032 阅读 · 1 评论 -
PCIE知识点-020:谈谈bus master en
Type1的function:控制function向Upstream方向转发Memory and I/O Read/Write Requests。参考文档:PCI Express Base Specification, Rev. 5.0 Version 1.0。Type0的function:控制function发起。Bus master en信号。原创 2023-05-01 21:00:30 · 2853 阅读 · 0 评论 -
PCIE知识点-017:ECRC 与 credit 信用量
从PCIe协议上可以看出,信用量仅仅包含三类:CPL credit/Post credit/non-post credit,其中每种包含data credit和header credit。ECRC 是额外添加的校验字段,在TLP内是1DW,即4byte,不属于data payload,也不属于header字段。支持ECRC check功能的PCIE 在设计rx buffer时,需要考虑到当所有收到的TLP都带ECRC字段时,buffer是否会溢出。1、ECRC 是不算在信用量范围内的。原创 2023-05-01 20:43:30 · 1291 阅读 · 0 评论 -
PCIE知识点-015:PCIE-DL_UP与DL_ACTIVE
通常PCIe IP会输出pcie_dl_up信号用于通知application. application根据pcie_dl_up来决策是否能够发出请求。例如:pcie_dl_up==1时,application才能发出memory请求。分别是DL_Down和DL_Up。Data Link Control and Management状态机在DL_Active时输出DL_UP信号:此时PCIe与链路对端已经完成信用量初始化等操作,事务层可以接收和发送数据。原创 2023-05-01 20:38:56 · 1190 阅读 · 0 评论 -
PCIE知识点-013:PCIE CPL 无限信用量
从描述可以看出endpoint类型的PCIe要求Cpld和cplh的信用量均为0,表示无限信用量。这要求endpoint用户侧在发出non-post请求时需要保证自己有足够的buffer可以存储返回的cpl/cpld报文。从PCI Express Base Specification, Rev. 4.0 Version 1.0 得知协议对。类型的PCIe function的CPLD/CPLH信用量存要求:见下图。原创 2023-05-01 20:31:06 · 992 阅读 · 0 评论 -
PCIE知识点-012:PCIE Zero-Length read
例如:正常情况下,一颗芯片中的PCIe作为endpoint,收到Zero-Length Write时,此Zero-Length Write不会改写当前tlp中addr对应的寄存器(or RAM)的数值,也不会产生对应地址的写脉冲,更不会应该此写操作造成芯片功能的变化。同样都能确保之前Posted Writes已经被执行,但是真实的读操作可能会改变芯片功能状态,而Zero-Length Read不会,因此Zero-Length Read更有优势。原创 2023-05-01 20:27:31 · 1470 阅读 · 2 评论 -
PCIE知识点-011:PCIE 配置能力结构与协议版本的关系
PCIE 配置能力结构与协议版本的关系原创 2022-07-10 12:29:53 · 711 阅读 · 0 评论 -
PCIE知识点-010:PCIE 热插拔资料从哪获取
本文简单描述了PCIE热插拔相关资料内容原创 2022-07-02 18:05:06 · 1602 阅读 · 1 评论 -
PCIE知识点-008:PCIE switch的结构
本文讲解了PCIE switch的常见的几种结构原创 2022-06-26 18:23:30 · 9498 阅读 · 0 评论 -
PCIE知识点-006:PCIE的寄存器属性
本文寄存器描述摘自PCI Express Base Specification Revision 5.0, Version 1.0描述了PCIE 配置寄存器的属性特征原创 2022-06-12 16:24:29 · 2191 阅读 · 0 评论 -
PCIE知识点-005:SR-IOV VF的配置空间
本文以PCIE 5.0协议进行讲解当PCIE function具备SR-IOV能力时,会存在至少一个PF(physical function)和至少一个VF(virtual function),并且每个VF与特定的PF是绑定关系。从PCIE协议5.0第9章节可以看到:VF同样具备如下配置空间NOTE:VF是具有轻量化的配置空间:部分PF具备的能力结构,VF是不具备的。部分PF具备的寄存器和字段,VF是不具备的。见PCIE 5.0协议9.34章节,内部有每个寄存器的差异描述。总结如下:......原创 2022-06-12 11:44:45 · 7038 阅读 · 0 评论 -
PCIE知识点-003:PCIE协议中的upstream概念
PCIE协议中的upstream概念描述原创 2022-06-12 10:46:17 · 2971 阅读 · 0 评论 -
PCIE:如何获取PCIE学习资料文档
PCIE学习需要哪些资料文档,以及如何获取原创 2022-03-19 20:43:30 · 9290 阅读 · 2 评论 -
PCIE原理-003:EP如何响应bus number和device number
pcie endpoint 如何响应不同BDF的配置请求原创 2022-03-13 18:07:31 · 1678 阅读 · 0 评论 -
PCIE知识点-002:PCIE协议中的几种bridge
PCI Express to PCI/PCI-X Bridges:又编写为PCIe-PCI/PCI-X Bridge或者PCIe-to-PCI-PCI-X-Bridge,提供PCIE结构到PCI/PCI-X结构的互联PCI-to-PCI bridge :又编写为PCI-PCI bridge,或者缩写为P2P bridge,提供PCI 结构到PCI结构的互联。Switch内部使用的是virtual PCI-PCI bridge。...原创 2022-03-12 16:40:48 · 7104 阅读 · 1 评论 -
PCIE知识点-001:bifucation是什么
1、PCIE bifucation 是什么Bifucation在汉语中指的是分叉的意思。简单理解,PCIE device支持bifucation特性指的是此pcie device可以同时对接多个不同的pcie设备。本文以intel FPGA SPEC文档为例,讲解bifucation特性。下文将讲解,一个16lane的pcie IP在不同的模式下,可以连接1个、2个和4个pcie设备。2、支持bifucation特性的PCIE IPThe P-tile Avalon-ST IP for PCI原创 2022-03-06 17:47:21 · 2385 阅读 · 0 评论 -
PCIE原理-004:PCIE链路训练、枚举扫描、配置BAR空间
1、PCIE 链路训练、枚举扫描、配置BAR的顺序?上电复位后,首先进行链路训练,之后进行枚举扫描、最后进行基地址寄存器BAR的配置。完成基地址配置后,就可以通过memory TLP读写进行寄存器的访问了。2、链路训练、枚举扫描、配置BAR的过程PCIE首先进行链路训练,上电复位后,链路训练状态机进入L0状态时链路训练完成后进入gen1模式,如果双方支持更高的速率,则立即进行gen...原创 2019-12-01 11:44:26 · 6387 阅读 · 2 评论 -
PCIE原理-003_1:PCIE是如何获取BUS number的
PCIE bus number是什么?如图所示为PCIE协议规定的3DW配置请求head的格式。其中字节8包含了bus number、device number、以及function number。Bus number指的当前PCIE设备在PCIE系统结构中被分配的总线号。PCIE的部分TLP传输需要确定bus number才能完成。2、PCIE 是如何获取bus number的.........原创 2019-10-18 21:08:29 · 11238 阅读 · 4 评论 -
PCIE原理-002:PCIE地址是如何映射的
1、PCIE地址映射是什么意思?本文以xinlinx FPGA PCIE为例,选择集成AXI的PCIE结构为例,说明AXI接口读写地址是如何映射成PCIE读写地址的。2、集成AXI 的PCIE结构下图所示为集成AXI的PCIE结构图。其中,包含了PCIE CORE,以及AXI bridge以及3个axi接口,AXI Master是axi总线的主端口,AXI4-lite 是slave端口...原创 2019-05-26 10:58:11 · 16048 阅读 · 2 评论 -
PCIE原理-001 PCIE的BAR0/1是如何配置的?
PCIE原理-001 PCIE的BAR0/1是如何配置的?1、PCIE的拓扑结构RC端通过配置TLP读写EP端PCIE的BAR0/1寄存器,确定EP端PCIE的存储空间。其中配置TLP需要用到总线号,设备号,以及功能号。此类概念如下图。图1 PCIE拓扑结构2、PCIE的配置空间图2 PCIE 配置空间的Type0和Type1头标区PCIE支持基本的PCI兼容配...原创 2019-03-24 09:53:26 · 13522 阅读 · 0 评论 -
PCIE的三种事务读写:存储器读写、配置读写、I/O读写
PCIE的三种事务读写:存储器读写、配置读写、I/O读写配置读写:配置读写请求TLP是使用“基于ID路由”的一组重要报文,其主要作用是读写PCIE总线的EP、switch以及PCIE桥片的配置寄存器以完成总线的配置。存储器读写:PCIE接口连接的两个设备间的数据传输需要存储器读写来完成,如RC向EP读写数据。I/O读写:目前PCIE总线不建议PCIE设备支持I/O地址空间,但是switch和RC需...原创 2018-06-03 11:03:39 · 10075 阅读 · 0 评论 -
PCIE知识点:001:non-posted事务和posted事务
PCIE知识点:001:non-posted事务和posted事务Non-posted(非转发)事务和-posted(转发)事务都是PCIE TLP(事务层包)类型。Non-posted TLP有返回TLP,而posted事务没有返回。记忆技巧:非转发事务非要返回。本文中说的事务指的是PCIE事务层TLP。1、两者有什么区别?Non-posted事务分为两个部分,首先是发送端向接收端发...原创 2018-05-25 21:04:02 · 7050 阅读 · 4 评论