完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
您好,我刚刚使用Virtex 4 LX25 FF668设备制作了一批4块板(步进2),我使用的是ISE WebPack 9.2i SP3。
Virtex 4接受来自16个A / D的高速LVDS数据,每个A / D具有3个LVDS输出(clk,data0,data1)。 A / D LVDS输出以80MHz DDR运行。 因此,Virtex有48个LVDS对进入它。 在4个板中,3个具有坏通道,其中数据1对被高或低。 坏数据1对总是在A / D 15或A / D 16上。我的调试步骤:1。 怀疑:A / D输出很糟糕。 测试:探测错误的A / D输出结果:示波器显示干净,正确的LVDS信号电平和转换。 结论:A / D是完全有效的。 怀疑:坏BGA球焊测试:将A / D输出设置为高阻抗,将Virtex对配置为输出,探测结果:通过这些焊盘的Virtex输出显示干净,正确的LVDS信号电平和转换。 结论:BGA键都很好。经过这些步骤后,看起来内部的Virtex LVDS接收器在内部出现问题。 A / D和Virtex电源均来自相同的3.3V电源,因此我不认为这是电源竞争问题,特别是因为A / D输出在配置完成后由FPGA启用之前会达到高阻态。 我会怀疑我的VHDL或UCF错误,除了这些LVDS接收器在大多数电路板上工作,所有闪存都使用相同的代码。 我会怀疑某种ESD损坏,除了它只发生在两对上,总是在A / D 15或16上的数据1。唯一剩下的理论来自Virtex 4 Pinout指南。 受影响的对(AF22 / AF21和AF18 / AE18)标记为多用途,并且显然是“SM”未来使用的引脚。问题:是否有一些勘误或其他指导说这些引脚不能用作LVDS接收器 在这些设备上? 如果没有,任何关于还有什么可能出错的理论? 谢谢,-Greg |
|
相关推荐
5个回答
|
|
我更新到ISE 9.2i SP4,没有变化。进一步调查显示以下内容: - 将受影响对上的IBUF_DS输出路由到简单的LVCMOS测试引脚输出正常工作,即来自A / D的信号被忠实再现
,所以问题不在差分接收器本身。 但是,每个A / D对都有一个IDDR模块,用于接收DDR A / D输出。 如果我将IDDR的输出路由到测试引脚,则良好的配对工作,而坏配对则不工作(它们的输出总是高或总是低)。 下面是相关VHDL的片段,其中DOUT1_P(16)和DOUT1_N(16)是连接到A / D 16的dout1差分对的物理引脚。 dout1(16)看起来正确,adbu1re(16)没有。 IBUFDS_DOUT1_16:IBUFDS通用映射(DIFF_TERM => TRUE)端口映射(O => dout1(16),I => DOUT1_P(16),IB => DOUT1_N(16)); IDDR_DOUT1_16:IDDR通用映射(DDR_CLK_EDGE =>“SAME_EDGE_PIPELINED”)端口映射(Q1 => adbuf1re(16),Q2 => adbuf1fe(16),C => TCLK,CE =>'1',D => dout1(16 ),R =>'0',S =>'0'); 我的下一步(如果没有Xilinx专家介入)将检查ISE中的FPGA布局规划,以确保从IBUF_DS到IDDR的连接没有任何疯狂,但我无法想象这是问题,因为它的工作原理 在我的一些董事会。 看起来更像是有缺陷的FPGA ......也许在生成Virtex时没有测试IDDR功能?-Greg |
|
|
|
因为您看到特定电路板出现间歇性问题,并且听起来它非常特定于架构,我建议您使用Xilinx技术支持打开案例以进一步解决此问题.http://www.xilinx.com/support
/clearexpress/websupport.htmBest问候,SaraMessage由sfelling编辑于02-28-2008 04:53 PM |
|
|
|
由于您已排除对器件和PCB造成任何可能的物理损坏,因此问题很可能是时序接口问题。
您应该验证TCLK是否实际工作,然后它是否具有正确的时序关系,以便能够捕获输入信号.Ed ------您是否尝试在Google中输入问题? 如果没有,你应该在发布之前。太多结果? 尝试添加网站:www.xilinx.com |
|
|
|
我按照建议打开了一张支持票。为了进一步的实验,我想我会通过切断坏IDDR的痕迹并焊接一些测试引线来牺牲其中一块坏道。
然后我可以用一个时钟和IDDR输入创建一个准系统VHDL文件,并用差分和单端输入进行测试,看看它是否与LVDS-> IDDR接口完全相关。如果这样,我会非常惊讶 是一个时序问题,因为我为前面描述的测试提供了Virtex恒定的逻辑电平(高或低),如果TCLK不在全局时钟网上,其他任何IDDR都不会运行。 我使用了具有已知LVDS输入电平的相同IDDR测试代码,并仅更改了哪些引脚用作IBUF_DS输入,只是为了确保我的测试代码正在处理“良好”输入。我无法想象失败的方式 可能导致这种情况。 我想象一个配置错误(无法正确初始化IDDR单元)是不可能的,因为如果配置数据出现CRC错误,Done不会变高? |
|
|
|
Xilinx技术支持帮助了我。
我错误地将2.5V连接到AVSS_SM和GND连接到AVDD_SM,这恰好是向后的。 错误必须随机破坏附近的逻辑部分,在我的例子中是IDDR块。 所以,重新旋转。 |
|
|
|
只有小组成员才能发言,加入小组>>
2163 浏览 7 评论
2605 浏览 4 评论
Spartan 3-AN时钟和VHDL让ISE合成时出现错误该怎么办?
2078 浏览 9 评论
3149 浏览 0 评论
如何在RTL或xilinx spartan fpga的约束文件中插入1.56ns延迟缓冲区?
2193 浏览 15 评论
有输入,但是LVDS_25的FPGA内部接收不到数据,为什么?
423浏览 1评论
1523浏览 1评论
在使用xc5vsx95T时JTAG扫片不成功,测量TDO无信号输出
2177浏览 0评论
508浏览 0评论
1640浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-4-24 11:01 , Processed in 0.960661 second(s), Total 48, Slave 42 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号