关于xilinx srio ip复位问题

关于xilinx srio ip复位问题

语言 :Verilg HDL 、VHDL
EDA工具: Vivado

  • 关键词: ip调用,Verilog HDL,srio ,复位
一、引言

在FPGA开发中, 在SRIO IP核使用时候,需要在必要时候对srio复位以确保两边设备可以正常的通信,博主总结了在实际应用中srio的处理方式。

二、FPGA 之间 srio通信复位处理

在使用 SRIO 进行 FPGA 之间的通信时,复位过程可能会影响通信链路的正确建立。以下是一些可能导致两块 FPGA 之间的 SRIO 连接无法建立的情况:

复位时序不同步:

如果两个 FPGA 的复位信号时序不同步,可能导致其中一个 FPGA 在另一个 FPGA 尚未完成复位时尝试建立 SRIO 连接。这可能导致通信链路的异常行为。确保在整个系统中复位信号同步是很重要的。

SRIO 模块未正确初始化:

如果在 SRIO 模块的复位过程中没有正确初始化,可能导致模块无法正确响应 SRIO 协议,从而影响通信链路。确保 SRIO 模块在复位后能够正确初始化。

等待复位完成的时间不足:

如果在 SRIO 模块复位后未等待足够的时间以确保模块完全初始化,可能会导致通信链路无法建立。请确保等待复位完成的时间是足够的。

SRIO 配置不匹配:

如果两个 FPGA 上的 SRIO 模块配置不匹配,例如,速率设置、协议版本不一致等,可能导致通信链路无法建立。确保两侧的 SRIO 配置是一致的。

两片fpga之间复位时候,需要注意时间上要尽量统一,且每个SRIO时钟域都有相关联的复位信号,复位应该在各自的时钟域中被断言至少四个时钟周期,并且在同步的情况下去除。如果核心被训练降频,即使phy_clk运行速度会比原始速率慢,复位仍然必须持续四个完整周期

三、FPGA与DSP之间srio通信复位处理

dsp与fpga之间srio通信时候,复位是两边上电进行一次复位 如果这个时候,srio没link的话,dsp会发送一个复位信号,即给一个上升沿给fpga,dsp会等10ms 然后再去link fpga 的srio.

四、FPGA与PPC之间srio通信复位处理

fpga和PPC的srio 如果没link上 那么 fpga检测到link为0 时,复位1s后 然后再继续link

五、总结

关于Xilinx SRIO IP的复位问题,最后再做如下总结:

1、在SRIO IP核的使用中,复位信号对于确保设备间正常通信至关重要。复位时序的同步性非常重要,以避免通信链路建立过程中的异常行为。

2、每个SRIO时钟域都应有相关的复位信号,并且复位信号应在相应的时钟域中被断言至少四个时钟周期。如果SRIO核心被训练降频,即使phy_clk的运行速度低于原始速率,复位信号仍然必须持续四个完整周期。

3、在SRIO模块的复位过程中,如果没有正确初始化,可能会导致模块无法正确响应SRIO协议,从而影响通信链路。

4、确保等待复位完成的时间是足够的,以确保SRIO模块完全初始化。

5、如果两个FPGA上的SRIO模块配置不匹配,例如速率设置或协议版本不一致,可能导致通信链路无法建立。确保两侧的SRIO配置是一致的。

6、在FPGA与DSP或PPC之间的SRIO通信中,复位处理也非常重要。例如,DSP在SRIO未连接时会发送一个复位信号给FPGA,并等待一段时间后再次尝试连接SRIO。

7、在SRIO IP核的配置中,复位模块的设计也很重要。内置的复位参考设计模块(srio_rst.v)具有单个复位输入sys_rst,此信号为异步输入,该模块将复位同步到每个时钟域,并扩展脉冲以满足最小复位周期要求

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

吾引先森

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值