PCIE xilinx v5 IP核使用前的研究
外带一个月前啃的一个星期,加本星期心无旁骛,啃出些心得,广惠后人。但愿有用。
trn信号是数据链路层的信号 TLP包是数据链路层传给transaction层的包 解包需要一个transaction的协议,所有req信号都是属于transaction层的信号,都是从包内数据解得的
数据链路层中trn_rd是传输TLP包的数据线 其他线都是辅助trn_rd传输数据的。比如起始结束 数据掩膜之类的。
header的叫法只属于transaction,header,payload,digist组成tlp数据包,payload专指有效数据。transaction层中的req_td 是用来表示crc校验用的。
req_rid和req_tag信号是 在接到tlp包后rx_engine进行拆包,得到的requester_id和request_tag信号 该信号传给tx_engine并回传给主机 告诉主机req_rid的请求已经收到,这两个信号与数据位mask(BE)合并于tlp包头的第三帧回传。
虽然pcie只有两根线传数据,但是需要数据链路层一个协议以及tlp解包协议。这主要因为1.数据链路层的协议可以使两端点pcie设备顺利传输数据,在物理层面上保证时序不错位。(电路人来做)2.包协议 更虚构的协议 告诉收发包者各个位都表示什么意思,进行bits align(计算机人关心)。 所以两个协议一个不能少。
non-posted和posted传输方式 修改trn_tbuf_av寄存器实现配置不同方式。 non-posted需要completer传给requester completion包,有时如果requester需要completer读数据 数据包含在completion包里。 posted传输方式 requester总是认为completer能够稳稳收包 不需要completion包应答而且posted request不一定在request tlp包里含有数据。
completion帧协议有变化,|completer_id(16bits)|000|0|byte_count(12bits)| 在此处出数据
http://note.youdao.com/share/?id=c595747071f2a744e6e48c2058f53722&type=note 带图版本;
以上为精髓
下面就是浩如烟海的文档中本人筛选出来的比较有用的文档
pcie_slot_to_pc.pdf
xcell26_678.pdf
PCIE总线的FPGA设计方法.pdf
PCIe-8622H.pdf
基于PCI+Express总线的高性能嵌入式系统研究_1357727089890.pdf
ug197.pdf
重点看ug197.pdf与两篇中文论文对着看
接下来就是实际操作一下xilinx的ip核
看完这些也就是刚刚能知道如何使用ip核,即transaction层和application层的接口。至于数据链路层的设计和Ghz pcb设计就不要想了。
转载:https://blog.csdn.net/jahero/article/details/13994907?locationNum=7
PCIE xilinx v5 IP核使用前的研究的更多相关文章
- 从Xilinx FFT IP核到OFDM
笔者在校的科研任务,需要用FPGA搭建OFDM通信系统,而OFDM的核心即是IFFT和FFT运算,因此本文通过Xilinx FFT IP核的使用总结给大家开个头,详细内容可查看官方文档PG109.关于 ...
- Xilinx DDR3 IP核使用问题汇总(持续更新)和感悟
一度因为DDR3的IP核使用而发狂. 后来因为解决问题,得一感悟.后面此贴会完整讲述ddr3 ip的使用.(XILINX K7) 感悟:对于有供应商支持的产品,遇到问题找官方的流程.按照官方的指导进行 ...
- xilinx DMA IP核(一) —— loop测试 代码注释
本篇笔记中的代码来自:米联科技的教程“第三季第一篇的DMA_LOOP环路测试” 硬件的连接如下图所示: 图:DMA Loop Block Design 橘色的线就是DMA加FIFO组成的一个LOOP循 ...
- xilinx DMA IP核(二) —— 文档阅读
本笔记不记录DMA的Scatter/Gather特性.DMA上有三种总线:AXI4-LIte(对寄存器进行配置),AXI4-Memory Map(用于与内存交互)和AXI4 Stream(用于与外设交 ...
- Xilinx FFT IP核缩放因子说明
以1024点FFT为例, reg [9:0] scale_sch = 10'b11_10_01_01_01; 流水线结构中,将每个基 2 的蝶形处理单元视为一个阶段. 每个阶段进行一次数据的缩减,缩减 ...
- xilinx VDMA IP核使用
VDMA实用配置说明 VDMA是通过AXI Stream协议对视频数据在PS与PL端进行搬运,开发者无需关注AXI Stream协议,在BlockDesign设计中只需要把相应信号进行连接即可. VD ...
- Xilinx的IP核接口命名说明
s_axis中的s表示:slave(从); m_axis中的m表示:master(主). axis表示AXI(一种总线协议) Signal.
- xilinx IP核配置,一步一步验证Xilinx Serdes GTX最高8.0Gbps
版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/u010161493/article/details/77658599 目录(?)[+] 之前 ...
- 7 Series GTP IP核使用总结 IP核配置篇
FPGA内嵌收发器相当于以太网中的PHY芯片,但更灵活更高效,线速率也在随着FPGA芯片的发展升级.本文对7系列FPGA内部高速收发器GTP IP核的配置和使用做些简单的总结,以备后续回顾重用.本文是 ...
随机推荐
- Calling a PL/SQL procedure in ODI
新建procedure 新建一个测试表格EMP: CREATE TABLE EMP ( ) CONSTRAINT PK_EMP PRIMARY KEY, ENAME ), JOB ), MGR ), ...
- Porting .Net RSA xml keys to Java
byte[] expBytes = Base64.decodeBase64(exponentElem.getText().trim())); byte[] modBytes = Base64.deco ...
- 通过Navicat Premium迁移Oracle到EDB迁移实战
1.1 DB migration analysis 在从Oracle向EDB迁移数据之前,须要做非常多准备工作.比方须要分析源数据库数据量大小.数据是否稳定.异构数据库兼容.编码方式.业务逻辑(存 ...
- having 与where 的异同点
having 与where 的异同点: where针对表中的列发挥作用,查询数据 having对查询结果中的列发挥作用,筛选数据 #查询本店商品价格比市场价低多少钱,输出低200元以上的商品 ; // ...
- 【mysql】一条慢查询sql的的分析
这个是我在jobbole.com 上看到的 先给出数据表table结构 mysql> show create table tt \G *************************** 1. ...
- 虚拟机virtualbox中挂载新硬盘
在virtualbox中装好Ubuntu后,发现硬盘空间太小,怎样才能增加硬盘容量?那就是再建一个硬盘: 1. 添加新硬盘 设置 -> Storage -> SATA控制器->右击, ...
- 树莓派进阶之路 (028) - 树莓派SQLite3的安装
MySQL占用内存太大,而SQLite是一款轻量级零配置数据库,非常适合在树莓派和其他嵌入式系统中使用.SQLite文档详细资料丰富,本文不会详细解释SQLite数据库操作的方方面面,只能结合具体场景 ...
- Redis学习之路(007)- Redis学习手册(实例代码)
在之前的博客中已经非常详细的介绍了Redis的各种操作命令.运行机制和服务器初始化参数配置.本篇博客是该系列博客中的最后一篇,在这里将给出基于Redis客户端组件访问并操作Redis服务器的代码示例. ...
- React(0.13) 定义一个动态的组件(属性)
<!DOCTYPE html> <html> <head> <title>React JS</title> <script src=& ...
- mvc area出现“找到多个与名为“Home”的控制器匹配的类型”错误的解决方法
出现该问题的原因是在默认的Golbal.asax.cs文件中已经注册了默认路由 public class MvcApplication : System.Web.HttpApplication ...