01111110序列信号检测器的VHDL状态机,状态转换表为什么是这样的,看不懂,求大神解答

还有,输出Q为什么是这样变化的

状态含义:
s0: reset
s1: got0
s2: got01
s3: got011
s4: got0111
s5: got01111
s6: got011111
s7: got0111111
s8: got01111110 此时检测到序列01111110 输出为1,其余输出都为0

很明显,在s1 s2 s3 s4 s5 s6 s7 如果输入为0,都会退回到s1(got0)追问

s8是哪里来的?

追答

呵呵 看错了,s8多余了。
s7是检测到0111111,那么此时若输入为0,就检测到了01111110 输出1,并且回到got0。

PS:这样的话(回到got0而不是reset)比如说 011111101111110 这一串序列会输出2个1

追问

这个代码是什么意思

追答

在每一个时钟的上升沿 将下一个状态的寄存器的值赋给当前状态的寄存器

温馨提示:内容为网友见解,仅供参考
无其他回答

01111110序列信号检测器的VHDL状态机,状态转换表为什么是这样的,看...
s8: got01111110 此时检测到序列01111110 输出为1,其余输出都为0 很明显,在s1 s2 s3 s4 s5 s6 s7 如果输入为0,都会退回到s1(got0)

相似回答