完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我们遇到的问题是我们的原型采用Spartan 3A XC3S200 FT256就像输入信号一样令人不知所措。
我们将用于16位并行总线的单端外部时钟(GPMC_CLK)从MCU连接到FPGA的Bank 2上的GCLK引脚(T9)。 该时钟是方波,周期为10nsec,上升/下降时间约为1nsec,仅在总线突发传输期间有效。 当MCU执行突发读取时,FPGA驱动所有16个数据总线引脚。 这些引脚配置为LVCMOS33,摆幅=慢,驱动强度= 12.通过此设置,数据表显示我们可以为每个VCCO /地对驱动13个引脚。 Bank 2有4对,所以它支持52个SSO。 当我们第一次观察到这个问题(VHDL代码检测到额外的时钟脉冲)时,我们在FPGA引脚的GPMC_CLK信号上添加了一个510欧姆的下拉电阻。 大大减少了问题但没有消除它。 小电阻应该消除任何串扰。 然后,我们在该FPGA引脚处添加了一个220pF电容接地,这“解决了”这个问题。 那个电容器减慢了边缘,这应该会使问题变得更糟,但它会修复它。 这是一个很大的线索。 我的理论是减缓了这个引脚的边沿,因为它减少了过冲/下冲。 该引脚上的电阻本身也减少了过冲/下冲。 根据本文档第5页的顶部,输入下冲/过冲可能导致偏置保护二极管向基板注入电流,从而影响其他引脚。 但如果这些其他引脚是问题的根源,为什么受影响的引脚上的RC网络会修复它呢? 您认为发生了什么?我们如何确定根本原因? 使用系列终止没有帮助。 |
|
相关推荐
3个回答
|
|
我们在源(MCU)上添加了一个串联终端电阻,现在FPGA工作正常。
根据你之前所说的和这个有点相关的帖子,我们应该在源端使用串联终端来进行用于时钟的信号的点对点连接。 FPGA输入具有如此高的速度,以至于它们对信号完整性过于敏感。 我们做的切换测试非常具有启发性。 我们也看到范围的重大反弹。 这不是时钟问题的根本原因,但它并不好,所以我们需要在PCB布局中解决这个问题。 我们的时钟走线现在也需要控制阻抗。 在原帖中查看解决方案 |
|
|
|
所以听起来就像我描述的那样。
下降沿的下冲可导致反弹升高到足以成为第二个上升沿。 上升沿的过冲可能导致反弹下降得足够低,足以成为第二个下降沿。 将探针应用于信号“修复它”(我称之为“Heisenbug” - 一种在观察时无法显现的错误),或者是由于电容或负载增加(或两者兼而有之)。 除了减慢边缘(具有额外的电阻或电容)之外,您还可以使用具有低阈值的非常快的二极管来固定它以钳制下冲(对于上升沿系统)。 Avrum |
|
|
|
我们在源(MCU)上添加了一个串联终端电阻,现在FPGA工作正常。
根据你之前所说的和这个有点相关的帖子,我们应该在源端使用串联终端来进行用于时钟的信号的点对点连接。 FPGA输入具有如此高的速度,以至于它们对信号完整性过于敏感。 我们做的切换测试非常具有启发性。 我们也看到范围的重大反弹。 这不是时钟问题的根本原因,但它并不好,所以我们需要在PCB布局中解决这个问题。 我们的时钟走线现在也需要控制阻抗。 |
|
|
|
只有小组成员才能发言,加入小组>>
2281 浏览 7 评论
2694 浏览 4 评论
Spartan 3-AN时钟和VHDL让ISE合成时出现错误该怎么办?
2176 浏览 9 评论
3250 浏览 0 评论
如何在RTL或xilinx spartan fpga的约束文件中插入1.56ns延迟缓冲区?
2321 浏览 15 评论
有输入,但是LVDS_25的FPGA内部接收不到数据,为什么?
582浏览 1评论
1648浏览 1评论
145浏览 1评论
在使用xc5vsx95T时JTAG扫片不成功,测量TDO无信号输出
2298浏览 0评论
611浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-8-23 21:18 , Processed in 3.201609 second(s), Total 53, Slave 46 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191