打印

时序的问题

[复制链接]
1572|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
legend_yuan|  楼主 | 2010-12-20 22:44 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
刚做了一块板子,arm+SDRAM+FPGA,arm有一撮flash线连接到SDRAM与FPGA,分时复用
现在有一个问题是,不焊FPGA的时候,SDRAM可以跑起来,一切通讯正常,焊接上FPGA以后,就跑不起来了。
后来在CPU的前端接了一个buffer,又好了。
因为flash是集成在SDRAM里面的,所以做远端分支的topology很难,主要是branch的地方长度下不去
开始以为是反射造成的问题,可是fpga没上的时候SDRAM可以跑就说明应该不是stub引起的反射。
后来发现这个就是一个普通时序系统,会不会是因为线长造成的时序问题呢
想改版但是又找不到充足的理由
还请DX指导下可能的原因,咱再一个个验证去
谢谢个先

相关帖子

沙发
chunyang| | 2010-12-20 23:13 | 只看该作者
先确认FPGA的编程是否存在错误,IO配置有问题的话可能会使总线负荷过重(存在电平竞争),其次不排除信号反射导致的问题,高速数字系统特别是高速总线需要格外留意PCB设计,严格遵循等长原则,同时尽量不要用T型连接而应使用L型连接,使用过孔更需格外小心处理,有时可以串个小电阻或对电源进行适当上拉。

使用特权

评论回复
板凳
mmax| | 2010-12-21 12:30 | 只看该作者
你出问题的时候FPGA配置了吗?

自己写个FPGA测试程序,将FPGA的跟总线相关的管脚先都定义为输入。看还有没有问题。
如果不影响。说明问题出在FPGA程序上,FPGA控制总线不符合总线时序。

一点点查吧。

配合示波器看一下片选、读写、等控制信号。

使用特权

评论回复
地板
mmax| | 2010-12-21 12:41 | 只看该作者
“后来在CPU的前端接了一个buffer,又好了。”

Buffer是 74lvc245之类的东西吧。buffer的方向是由CPU总线控制的吧。

Buffer+FPGA+CPU+SDRAM就正常了??

使用特权

评论回复
5
legend_yuan|  楼主 | 2010-12-22 21:03 | 只看该作者
对,加了个buffer就好了。这边的fpga都是专人做的,明天我让他再把管脚重新配置为输入试下。
To chunyang
对于这种远端分支的拓扑结构为什么要采用chain而不是T型远端分支topology呢,特别对于这种普通时序系统,对于等长的要求会比较严格吧

使用特权

评论回复
6
mmax| | 2010-12-22 21:22 | 只看该作者
是不是总线速度太快了,接近SDRAM的限制了。

放慢试试?

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

45

主题

303

帖子

0

粉丝