zoukankan      html  css  js  c++  java
  • VHDL设计Mealy状态机的模板,识别序列1100100

    LIBRARY IEEE;
    USE IEEE.STD_LOGIC_1164.ALL;

    ENTITY detector IS 
     PORT(clk,x: IN STD_LOGIC;
      mk: OUT STD_LOGIC);
    END detector;

    ARCHITECTURE xdetector OF detector IS 
     TYPE states IS(s0,s1,s2,s3,s4,s5,s6,s7);
     SIGNAL state: states;
     BEGIN
      PROCESS(x,state)
      BEGIN
       IF rising_edge(clk) THEN
        CASE state IS
         WHEN s0 => mk<='0';
          IF(x='1') THEN
           state<=s1;
          ELSE
           state<=s0;
          END IF;
         WHEN s1 => mk<='0';
          IF(x='1') THEN
           state<=s2;
          ELSE
           state<=s0;
          END IF;
         WHEN s2 => mk<='0';
          IF(x='1') THEN
           state<=s2;
          ELSE
           state<=s3;
          END IF; 
         WHEN s3 => mk<='0';
          IF(x='1') THEN
           state<=s1;
          ELSE
           state<=s4;
          END IF;
         WHEN s4 => mk<='0';
          IF(x='1') THEN
           state<=s5;
          ELSE
           state<=s0;
          END IF;
         WHEN s5 => mk<='0';
          IF(x='1') THEN
           state<=s2;
          ELSE
           state<=s6;
          END IF; 
         WHEN s6 => mk<='0';
          IF(x='1') THEN
           state<=s1;
          ELSE
           state<=s7;
          END IF; 
         WHEN s7 => mk<='1';
          IF(x='1') THEN
           state<=s1;
          ELSE
           state<=s0;
          END IF;
        END CASE;
       END IF;                            
      END PROCESS;
    END xdetector;

  • 相关阅读:
    使用C#开发ActiveX控件 并制作Cab包
    asp.net后台创建table设置宽度百分比
    Sql按姓名查出某个人的成绩排名
    获得DataGridView多选框值
    解决iframe窗体丢失Session时登录窗口显示在子页面的问题
    xml返回数组数据
    安卓界面组件文本框
    安卓的UI界面开发(初学者推荐)
    安卓布局
    安卓界面组件按钮
  • 原文地址:https://www.cnblogs.com/oyjj/p/2132971.html
Copyright © 2011-2022 走看看