从FPGA转换到门阵列

[11-20 16:13:22]   来源:http://www.88dzw.com  FPGA   阅读:8369

文章摘要:全局时钟信号的使用 如果时钟信号上由逻辑等式产生,那么这种方法就会有一些自身的问题。如果全局时钟信号线不用于路由派生时钟,那么时钟的同步上会有一些重要的差别。如果出于不同的用途分别产生时钟,情况甚至会变得更糟。 在长串寄存器链中,这个问题会在多处出现。此电路的一个替代方法如图3所示。使用CLK信号,用第二个与门消除了多路时钟。这样只产生一个时钟信号到触发器串。图3中触发器串的时钟信号是系统时钟通过门延迟得到的,当到达触发器串的数据与触发器串的时钟不同步时,将在两个路径间产生竞争。一路是触发器串的数据输入路径,另一路是系统时钟到达触发器串的时钟输入端路径。解决方案是用系统时钟的下降沿

从FPGA转换到门阵列,标签:fpga是什么,fpga教程,http://www.88dzw.com

全局时钟信号的使用

    如果时钟信号上由逻辑等式产生,那么这种方法就会有一些自身的问题。如果全局时钟信号线不用于路由派生时钟,那么时钟的同步上会有一些重要的差别。如果出于不同的用途分别产生时钟,情况甚至会变得更糟。

    在长串寄存器链中,这个问题会在多处出现。此电路的一个替代方法如图3所示。使用CLK信号,用第二个与门消除了多路时钟。这样只产生一个时钟信号到触发器串。图3中触发器串的时钟信号是系统时钟通过门延迟得到的,当到达触发器串的数据与触发器串的时钟不同步时,将在两个路径间产生竞争。一路是触发器串的数据输入路径,另一路是系统时钟到达触发器串的时钟输入端路径。解决方案是用系统时钟的下降沿触发的单独触发器串记录数据。

    状态检测:

    如果不考虑电路钟的延迟,状态机的状态检测可能会出错。如果用组合逻辑来产生复位信号,那么即使是同步电路也会产生问题。

    尽量保持状态控制逻辑(如计数器、分频器等)少于10位。如果超过10位,长计数器应该有用于监视内部状态的抽头,或者至少有一预置的功能。这些监视用抽头应能够很容易地将数据传送到输出引脚,以便监测。

    复位问题:

    如同时钟一样,如果使用组合逻辑或者不详细考虑时序,复位信号也能产生一系列问题。

    图4示出了一种产生短脉冲的方法:当触发器D输入是高电位时,每个时钟周期后Q端产生一个短脉冲。复位信号是低电位有效,Q(输出高电位时不引起复位。当时钟的上升沿到来时,如果D端是高电位,Q(输出变低,导致触发器复位。然后Q(又被拉回到高电位,从而结束复位。
为避免组合复位信号的问题,可以使用图5所示得另一触发器的输出来驱动复位信号。

    执行问题:

    当逻辑等式用于描述一种功能,而编辑器用于产生逻辑关系时,情况变得更有趣。考虑最近发现的一个例子:

    if T,OUT=/A

    else,OUT=B

    如图6,尽管电路在逻辑上是正确的,但当T变化时会产生毛刺信号。A=0,B=1时出现问题。
图7为简化电路。信号T仅仅用作模式切换。当系统在工作台上测试时,毛刺信号绝不会是问题。当随后使用自动系统测试时,要考虑很多效应以找到系统错误的根源。图7所示的逻辑在门阵列实现时,将可能在不需要的时候产生脉冲。事实上,这个问题是转换到门阵列实现时发现的,正可以解释自动的系统测试期间所出现的反常现象。

分割与试验的方法:

    如果FPGA的功能在很大程度上依赖于路径延迟,那么设计阶段重新选择路径将引起一部分电路工作不正常。即使以前电路工作正常并且似乎已经最后完成了,情况仍然会如此。不同制造批号的电路模块可能具有不同的工作特性。工作电压和工作温度的变化可能引起时序上的变化。如果设计中每一步的工作时序只有很少的裕量,甚至没有,那么上述的效应将引起不同的逻辑行为。

    上述问题与使用FPGA或是门阵列无关。使用好的设计技术可以将FPGA中的这些问题减至最少,并且可以使得门阵列的转换变得更为平稳。因为仿真模拟通常用于验证执行情况,而较差的设计在进行门阵列的转换中问题就会暴露出来。采用不同的时序模型库模拟,一个完美的设计能够给出相同的逻辑输出,而与电压、温度和工艺变化无关。

上一页  [1] [2] [3]  下一页


Tag:FPGAfpga是什么,fpga教程FPGA

《从FPGA转换到门阵列》相关文章

分类导航
最新更新
热门排行