序列检码器 状态机 的一点小疑问

2019-03-25 09:48发布

    序列检测器的逻辑功能描述:10010 的序列检码器,状态转移图如下图所示: 图片1.jpg     我我有一点不明白, 在状态B的情况下要是输入1的话,直接进入A状态不行么?G状态下如果输入1的话也可以直接进入A状态啊,我就是这样做的一个状态机,也实现了这个序列的功能要求,重叠的码也能检测出来,所以我想问问 这个F 状态到底有什么用啊?如果没有什么实质的作用那多一个状态岂不是多占用了资源? 此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
17条回答
leomeng
1楼-- · 2019-03-27 09:35
 精彩回答 2  元偷偷看……
bjmonsoon
2楼-- · 2019-03-27 15:07
楼主你好,我刚刚开始学习FPGA,特别希望能够获得你的原代码来学习序列检测 。 61305608@163.com   谢谢!
fuyaolong
3楼-- · 2019-03-27 20:25
是的,实现省资源,比状态机好点
唐俊
4楼-- · 2019-03-28 00:08
上面没有具体给出移位寄存器的程序我这里直接给出,关键在于移位之后,将数放入寄存中然后比较序列。(下面是直接写的,如有错误,自己改下,就当练习好了,呵呵)
odel xuliejianceqi(in,out,rst,clk);
input in,clk;
output out;
reg [7:0] data;

always@(posedge clk or posedge rst)
begin
  if(rst)
   begin
    data<=8'h00;
    out<=1'b0;
   end
  else
    begin
       if(data==8'b10101011)//要检测的序列
       out<=1;
       else
        begin
          data<=data<<1;
          data[0]<=in;
          out<=1'b0;
        end
   end
end
endmodule
leomeng
5楼-- · 2019-03-28 01:34
NICE

一周热门 更多>