集成电路技术分享

 找回密码
 我要注册

QQ登录

只需一步,快速开始

搜索
查看: 2500|回复: 2

状态机,和非状态机的差别

[复制链接]
HDL 发表于 2010-6-26 01:38:22 | 显示全部楼层 |阅读模式
本帖最后由 fpgaw 于 2010-6-28 01:13 编辑

状态机,和非状态机的差别
状态机的下降沿检测

Library IEEE;
Use        IEEE.Std_Logic_1164.All;

Entity OZT Is
Port (
        CLK : In Std_Logic;
        Rst : In Std_Logic;
        Din    : In Std_Logic;
        Dut : Out Std_Logic
        );
End OZT;

Architecture OZT_Arc Of OZT Is

Type State Is (ZZ,ZO,OZ,OO);
Signal Pres_S : State;

Begin

Process (Rst,Pres_S,Din,CLK)
Begin

If Rst='1' Then
    Pres_S<=ZZ;
    Dut<='0';

Elsif Clk'Event And Clk='0' Then
Case Pres_S Is
    When ZZ=>
        If Din='1' Then
        Pres_S<=Zo;
        Else
        Pres_S<=ZZ;
        End IF;
    When Zo=>
        If Din='1' Then
            Pres_S<=Oo;
        Else
            Pres_S<=OZ;
        End If;
    When OZ=>
        If Din ='1' Then
            Pres_S<=Zo;
        Else
            Pres_S<=ZZ;
        End If;
    When OO=>
        If Din ='1' Then
            Pres_S<=Oo;
        Else
            Pres_S<=OZ;
        End If;
    End CAse;
End If;

If Pres_S=OZ Then
    Dut<='1';
Else Dut<='0';
End If;

End Process;


End OZT_Arc;


没有使用状态机 的下降沿检测,
Library IEEE;
Use        IEEE.Std_Logic_1164.All;
Use        IEEE.Std_Logic_UnSigned.All;
Use     IEEE.Std_Logic_Arith.all;

Entity OZT Is
Port(
    CLK : In Std_Logic;
    Rst : In Std_Logic;
    Lod : Out Std_Logic;
    STSK : In Std_Logic);
End OZT;


Architecture OZT_Arc Of OZT Is

Signal Lot : STd_Logic_vector(0 To 1);

Begin

Process(Rst,CLk,Lot,sTSK)

Begin
If Rst='1' Then Lot<="00";

ElsIf Clk'Event And Clk='0' Then
Case Lot Is
When "00"=>
    If Stsk='1' Then Lot<="01";
    Else Lot<="00";
    End If;
When "01"=>
    If Stsk='1' Then Lot<="01";
    Else Lot<="10";
    End IF;
When "10"=>
    If Stsk='1' Then Lot<="01";
    Else Lot<="00";
    End IF;
When "11"=>
    If Stsk='1' Then Lot<="11";
    Else Lot<="10";
    End IF;
End Case;
End If;
End Process;

Lod<=(Not Lot(1)) And Lot(0);

End OZT_Arc;
大鹏 发表于 2020-7-1 17:24:42 | 显示全部楼层
状态机,和非状态机的差别
大鹏 发表于 2020-7-15 18:58:14 | 显示全部楼层
状态机,和非状态机的差别
您需要登录后才可以回帖 登录 | 我要注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

QQ|小黑屋|手机版|Archiver|fpga论坛|fpga设计论坛 ( 京ICP备20003123号-1 )

GMT+8, 2025-4-20 05:28 , Processed in 0.062948 second(s), 24 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表