欢迎来到天天文库
浏览记录
ID:15497839
大小:63.00 KB
页数:3页
时间:2018-08-03
《实验5 状态机序列检测器设计》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、实验五序列检测器设计一、实验目的1掌握时序电路状态机设计一般方法;2学会用状态机方法实现序列检测器的设计。二、实验原理:序列检测器可用于检测一组或多组由二进制码组成的脉冲序列信号,当序列检测器连续收到一组串行二进制码后,如果这组码与检测器中预先设置的码相同,则输出1,否则输出0。由于这种检测的关键在于正确码的收到必须是连续的,这就要求检测器必须记住前一次的正确码及正确序列,直到在连续的检测中所收到的每一位码都与预置数的对应码相同。在检测过程中,任何一位不相等都将回到初始状态重新开始检测。序列检测可由状态机完成,也可进行串行滑窗检测器。线性反馈移位寄存器,用来产生伪随机
2、序列,用做测试数据输入。三、实验内容1、完成“1101”检测器的设计,输入信号a和时钟clk,输出为out。2、设计一个五位线性反馈移位寄存器,其输出数据以串行移位方式进入序列检测器,其有置数端set,输入时钟clk,左移输出out;3、连接五位线性反馈移位寄存器和序列检测器构成完整实验系统。四、设计步骤1、建立新工程,2、完成五位线性反馈移位寄存器设计,序列检测器设计,顶层文件设计,并把各个模块连接起来。3、对顶层文件进行编译。4、对顶层文件时序仿真。五、实验报告:根据以上的实验内容写出实验报告,包括设计原理、程序设计、仿真分析等详细实验过程。六、扩展部分:1、采用
3、文本输入方式构成顶层文件,重新构造本系统。32、设计采用移动滑窗法进行序列检测。参考程序:状态机序列检测器(1101)3modulefsm(clock,reset,datain,out);inputclock,reset,datain;outputout;regout;reg[1:0]state;parameterIdle=2'b00,Start=2'b01,Step=2'b10,Stop=2'b11;always@(posedgeclock)//if(!reset)//beginstate<=Idle;out<=0;endelsecase(state)Idle:if
4、(datain==1)beginstate<=Start;out<=0;endelsebeginstate<=Idle;out<=0;endStart:if(datain==1)beginstate<=Step;out<=0;endelsestate<=Idle;Step:if(datain==0)beginstate<=Stop;out<=0;endelsestate<=Step;Stop:if(datain==1)beginstate<=Idle;out<=1;endelsebeginstate<=Idle;out<=0;endendcaseendmodule33
5、线性反馈移位寄存器:modulegedata(clk,out,set);inputclk,set;outputout;wireout;reg[4:0]sr;assignout=sr[0];always@(posedgeclk)beginif(set)sr<=5'b10101;elsebeginsr<=sr>>1;sr[4]<=sr[2]^sr[0];endendendmodule3
此文档下载收益归作者所有