Advertisement

Verilog实现有限状态机识别特定序列

阅读量:

目的

通过应用Moore状态机实现对输入序列的识别功能,当检测到输入序列中包含1011这一特定模式时,系统将在一个时钟周期内输出高电平信号。例如,当输入的序列如下所示:

复制代码
    0001_0110_1011_0111_0010_1010_1101_0000_1011_1101_1000_0010_1101_1011_0011...
    
      
    

则生成的序列为:

复制代码
    0000_0010_0001_0010_0000_0000_0100_0000_0001_0000_1000_0000_0100_1001_0000...
    
      
    

实现

1 detect_serial_fsm.v
依据设计要求,需识别序列中出现的特定模式1011,采用Moore状态机进行描述。设定如下:
当输入信号为1时,系统由初始状态进入状态1;若输入为0,则维持在初始状态不变。
处于状态1时,若输入为0,则进入状态2;若输入仍为1,则保持在状态1。
处于状态2时,若输入为1,则进入状态3;否则返回初始状态。
处于状态3时,若输入为1,则进入状态4;否则返回至状态2。
当处于状态4时,若输入为1,则回到状态1;若输入为0,则返回至状态2。唯有在状态4时输出值为1,并且两种情形均输出

全部评论 (0)

还没有任何评论哟~