PCIE——数据有效位判定

在FPGA设计的PCIe接口中,针对64bit和128bit接口,介绍了如何根据TLP头部和相关信号(如s_axi_rx_tkeep、m_axi_rx_tuser)来判断数据传输的有效双字。对于64bit,利用s_axi_rx_tkeep和s_axi_rx_tlast信号;对于128bit,依赖m_axi_rx_tuser中的rx_is_eof和rx_is_sof来确定数据起始和结束位置。
摘要由CSDN通过智能技术生成

基于FPGA设计PCIE接口设计(数据有效位判定)

        PCIE和CPU之间通信,当FPGA发送一个存储器读请求(MRd)后,将收到CPU返回的带数据读完成报文(Cpld)。根据带宽的不同,接口数据位宽可以选择为64bit、128bit、256bit。在PCIE协议中,数据传输最小单位是双字(DW),所以FPGA收到Cpld报文后需要判断数据的哪个双字有效。Cpld报文的TLP头部长度为3DW。



    1. 接口数据位宽为64bit

            根据s_axi_rx_tkeep信号来判断哪个双字有效。

    (1)判断最后64bit数据有效双字:

        当s_axi_rx_tlast信号和s_axi_rx_tvalid信号同时拉高时,表示为最后一拍数据,根据s_axi_rx_tkeep[7:0](0xFF或0x0F)信号来判断哪个双字有效;其它情况下,s_axi_rx_tkeep[7:0]=0xFF,根据s_axi_rx_tvalid信号来判断64bit数据是否有效。

s_axi_rx_tdata[63
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值