完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
嗨,
我在Kintex7 XC7K325T中使用GTX收发器与SATA 3 Gb / s的SATA磁盘通信。 我的问题是,有时RXELECIDLE信号在数据传输过程中变高。(我认为这意味着SATA磁盘电气空闲) 并且在RXNOtiNTABLE也进行了转换之后。 (我认为这意味着传入的数据无效)。 我的测试是这样的: 我完全写入120 GByte磁盘。 没有错误。 然后我开始一个新的完整写入过程。 在转移的某个地方我得到了这个错误。我在chipcope中看到错误。 我的主要GTX收发器设置如下: 我使用Vivado 2014.4和7系列FPGA收发器向导(3.4) 协议= SATA3 线速= 3 Gbps 参考时钟= 150 MHz 编码= 8B / 10B RX / TX Buffer =启用 RX均衡: 模式= DFE-Auto 自动增益控制=自动 CTLE3适应逻辑=启用 RX终端电压调整值= 800 mV 使用RX OOB信号检测=启用 通道绑定=未启用 时钟校正=使用两个时钟校正序列 任何人都可以帮我找到如何找到这个错误的原因? 谢谢。 穆斯塔法苏 |
|
相关推荐
9个回答
|
|
|
|
|
|
SATA 3 Gb / s的确切RXCDR_CFG和RXOUT_DIV必须是什么。
根据AR#53364,它是这样的: RXOUT_DIV = 2 RXCDR_CFG = 72'h03_8800_8BFF_4020_0008 我的设计也像上面那样。 但在AR#53364中,还提到了SATA规范要求扩频时钟(SSC)。 然后在UG476中,GTX CDR的唯一表推荐设置协议与SSC。 (表4-18) 说: RXOUT_DIV = 1 RXCDR_CFG = 72'h03_8000_23FF_1040_0008。 这些价值观有所不同? 为什么? 在AR#53364中,还提到: “具体来说,当在Gen 1,Gen 2和Gen 3的不同SATA线路速率之间切换时,SATAsome驱动器进出电子空闲(OOB检测 - RXELECIDLE的断言/解除断言)”。 Sata磁盘如何在线路速率之间切换? 虽然主机以固定速率驱动线路,但它能否在线路速率之间切换? 另外我可以说在我的所有测试中OOB都可以。 在SATA链路初始化期间的OOB设计中,我保持RXCDRDHOLD = 1'b1。 然后我等待RXELECIDLE = LOW条件为255 userclk循环然后我设置RXCDRDHOLD = 1'b0。 这是在AR#63869中提到的。 我可以说PCB中没有信号完整性问题,我使用短的SATA电缆进行连接。 我的Sata Disk是OCZ AGILITY3系列SATA III SSD磁盘。 我在SATA II(3 Gb / s)模式下使用它。 毕竟我找不到为什么我在某些转移中得到RXELECIDLE错误。 谁能提出一些建议? 穆斯塔法 |
|
|
|
任何xilinx主持人都能说出来吗?
我想知道如果这个SATA实现是直接的设计,如果我们使用向导必须工作得很好。 可以错误的SATA磁盘? 用不同的SATA磁盘测试是否有意义? 穆斯塔法 |
|
|
|
你能查看ug476的表4-9吗?
它有关于如何解释RXELECIDLE信号的指导,SATA运行速度为3Gbps。 -------------------------------------------------- ----------------------------别忘了回复,给予kudo并接受为解决方案--------- -------------------------------------------------- ------------------- |
|
|
|
根据表4-9的Sata 3 Gb / s,它表示不要使用rxelecidle进行DFE,LPM和CDR的内部复位/保持。
因为它说我不使用rxelecidle,而是使用rxnotintable信号来理解传入的数据是否有效。 在我的错误情况下,我看到rxelecidle和rxnotintable断言。 我认为这是与Sata Disk的一种链接断裂,我正在寻找为什么会发生这种情况。 是因为GTX设计吗? 是因为SATA磁盘吗? 是因为高级SATA命令吗? 还是因为pcb和有线电视? 在其他一些帖子中,很多人讨论了如何设置GTXE2的关键参数。 我读了所有#ARs,我的设计就像推荐的那样。 我唯一怀疑的是: 在UG476中它说, PCS_RSVD_ATTR [3]控制OOB clk的来源。 0 =>选择sysclk 1 =>选择CLKRSVD [0] 在向导生成的设计中 PCS_RSVD_ATTR = x“000000000100”因此PCS_RSVD_ATTR [3] = 1 这意味着为OOB clk选择了CLKRSVD [0]。 什么是CLKRSV [0]? 在GTXE2的端口映射中,CLKRSVD =“0000”。 据我所知,大多数关键参数是RXOUT_DIV和RXCDR_CFG。 在我的设计中,这些参数与AR#53364中推荐的相似。 RXOUT_DIV = 2 RXCDR_CFG = 72'h03_8800_8BFF_4020_0008 我想说这些参数在UG476和AR#53364中是不同的,但我假设最新的有效参数在AR#53364中。 我的下一个试验将改变这些参数并再次测试。 我正在等待任何其他建议,因为虽然它很少存在,但我仍然坚持这个错误。 谢谢。 |
|
|
|
在我之前的命令中,有一个错误,抱歉。
PCS_RSVD_ATTR = x“000000000100”因此PCS_RSVD_ATTR [3] = 0并且它为OOB clk选择sysclk并且没有问题。 所以我认为每个参数都像推荐的那样。 穆斯塔法 |
|
|
|
嗨穆斯塔法,你修复你的错误吗?
|
|
|
|
嗨,嗯
实际上我为sata工作休息了一下,我们用它来处理bug。 现在我再次处理,我看到不同的SATA磁盘表现不同..例如西方数字sata hdd(而不是ssd)没有失败.. |
|
|
|
嗨MustafaHow现在是你的sata工作,我参考了你在gtx上的设置并参与了sata2.0设计,但是在我的项目中我发现在oob完成后rxnotintable被连续断言,我确实在oob初始化中保存了rxcdrhold信号,但是
它没有用,我也在oob之后尝试过GTRXRESET,但是,这个信号对gtx没有影响,因为在IPcore内部,顶部模块中的GTRXRESET被EXAMPLE_USE_CHIPSCOPE参数禁止; 那么我如何才能将gtx用于sata?非常感谢! |
|
|
|
只有小组成员才能发言,加入小组>>
2360 浏览 7 评论
2779 浏览 4 评论
Spartan 3-AN时钟和VHDL让ISE合成时出现错误该怎么办?
2247 浏览 9 评论
3324 浏览 0 评论
如何在RTL或xilinx spartan fpga的约束文件中插入1.56ns延迟缓冲区?
2411 浏览 15 评论
有输入,但是LVDS_25的FPGA内部接收不到数据,为什么?
725浏览 1评论
请问vc707的电源线是如何连接的,我这边可能出现了缺失元件的情况导致无法供电
521浏览 1评论
求一块XILINX开发板KC705,VC707,KC105和KCU1500
332浏览 1评论
735浏览 0评论
1934浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-6 05:46 , Processed in 1.143832 second(s), Total 63, Slave 56 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号