有限状态机的FPGA设计
有限状态机是一种常见的电路,由于时序电路和组合电路组成,设计有限状态机的第一步是确定采用Moore状态机还是采用Mealy状态机。Mealy状态机的状态转变不仅和当前状态有关,而且和各输入信号有关;Moore状态机的转变只和当前状态有关。从电路实现功能上来讲,任何一种都可以实现同样的功能。但他们的输出时序不同,所以选择使用哪种状态机是要根据具体情况来定。Mealy状态机:由于输出受输入的直接影响,而输入可以再时钟周期的任一时刻变化,这就使得输出状态比Moore状态机的输出状态提前一个周期到达。输入信号的噪声可能会出现在输出信号上。
Moore状态机:在时钟脉冲的有限个门延时之后,输出达到稳定。输出会在一个完整的时钟周期内保持稳定值,及时在该时钟内输入信号变化了,输出信号也不会变化。输入对输出的饿影响要到下一个时钟周期才能反映出来。把输入和输出分开,是Moore状态机的重要特征。
对于同一电路,使用Moore状态机设计可能会比使用Mealy状态机多出一些状态。
根据特征和药设计的电路的具体情况,就可以而确定使用哪种状态机来实现功能。一旦确定状态机,接下来就要构造专题转换图。现在还没有一个成熟的系统化装踏入构造算法,所以对于实现同一功能,可以搞糟出不同的状态转换图。但一定要遵循结构化设计。在构造电路的状态转换图时。使用互补原则可以帮助我们检查设计过程中是否出现错误。互补原则是指离开状态图节点的所有之路的条件必须是互补的,同一节点的任何2个或多个之路的条件不能同时为真。同时为真时我们设计不允许的。
页:
[1]