线路的尖峰毛刺造成FPGA工作不正常

eeleader   2011-3-30 19:17 楼主
  使用EP2C35 FPGA 设计了多个串口工作,出现了几个问题. 第一次, 由于内核电源1.2V 供电不是完整平面,而是带状线供电,EP2C35 在代码容量大的情况下,而且输入FPGA 信号变换频繁, 造成整个EP2C35 所有的D触发器停止翻转. 经过多次验证, 只要输入的FPGA 的IO 信号 太多, 并且有2M 串口信号进入, 任何一个可能动作, 都会造成FPGA 的时钟在D触发器停止翻转. 查阅Alter 的关于电源方面的资料.
   altera 提供此方面的资料显示, 如果FPGA电源的完整性得不到保证, FPGA可能会出现意想不到的后果! 联想到本次FPGA内核电源的PI 特性不好, 估计出现这个问题可能是 FPGA 电路板的问题引起.
 
   为了验证上面想法的正确性, 我们对FPGA的内核1.2V电源的平面重新进行分割并制板,然后把在上面电源完整行不好造成D触发器停止翻转的程序,在新板上测试,居然发现问题解决了! 得出一个结论,FPGA正常可靠的工作, 需要一个优质的电源来保证的.
 
   第二次, 串口模块在新设计板上工作时, 出现一个怪现象. 单个串口程序模块与另外一块板进行串口通信时,串口通信工作正常.然而, 多个串口模块在新的FPGA板上工作时,发现一个问题, 串口通信居然不正确,频繁的出错. 串口模块在两块相同的EP2C35板上通信, 结果串口通信模块正常工作. 问题怪哉乎!
  经过多次,对比和比较验证,发现问题居然还是出现在EP2C35的硬件设计上, EP2C35用作输入IO时,所有IO线并行走线,线路间干扰造成串口通信接收工作不正常. 当两个EP2C35模块相互通信工作正常,由于所有的IO翻转时钟都是同源,线路间干扰较小.当EP2C35模块与其他FPGA 的串口通信模块串口通信时,由于时钟翻转与别的串口输入翻转存在相位误差,产生高频干扰(线路间),引起串口通信不正常工作.
  找到问题存在,解决这个问题方法:1.增加PCB层数,输入FPGA的IO线特别处理,增加间距和线宽;2.输入FPGA IO 口线串电阻,加电容,进行高频滤波;3. 软件滤波.
  

回复评论 (6)

自己顶!

一个为理想不懈前进的人,一个永不言败人! http://shop57496282.taobao.com/ 欢迎光临网上店铺!
点赞  2011-4-11 14:13

贴段滤毛刺的verilog代码供参考

// anti_s.v
////此模块工作在100M,作用是滤除任何脉宽小于2个时钟周期(2*10ns=20ns)的抖动,输出输入都是低电平有效。
/////但是低电平信号会有两个周期的延时。
module anti_s (
                CLK,
                D,
                Q,
                RST_L
                );
                input CLK;
                input D;
                output Q;
                input RST_L;

reg Q;
reg [1:0] state;
always @ (posedge CLK or negedge RST_L)
begin
  if(!RST_L)
    begin
      Q=1;
      state=0;
    end
    else
      begin
        if (!D)
          begin
          casez(state)
          0:
          begin
          state=1;
          Q=1;
          end
          1:
          state=2;
          2:
          begin
          state=2;
          Q=0;
          end
          default state=0;
          endcase
          end
        else
          begin
          Q=1;
          state=0;
          end
      end

end
endmodule
点赞  2011-4-11 14:22
嗯,说的不错,数字电路对电源的要求虽然通常情况下不像模拟电路那么苛刻,但高速高密度低压逻辑电路对电源的要求就明显增加了。
点赞  2011-4-11 15:47

数字电路高速时, 要求越来越高. 比如电源完整性, 信号反射等等.

一个为理想不懈前进的人,一个永不言败人! http://shop57496282.taobao.com/ 欢迎光临网上店铺!
点赞  2011-4-25 15:44
菜鸟来此学习了,谢谢楼主分享宝贵的设计经验,这都是拿汗水换回来的啊!
点赞  2011-4-25 22:00

多谢理解!

 

能为中国电子产业贡献一点力量, 感到莫大的荣幸!

一个为理想不懈前进的人,一个永不言败人! http://shop57496282.taobao.com/ 欢迎光临网上店铺!
点赞  2011-4-26 08:13
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复