序列检测器 verilog

上传人:cn****1 文档编号:510548064 上传时间:2023-08-19 格式:DOC 页数:4 大小:87KB
返回 下载 相关 举报
序列检测器 verilog_第1页
第1页 / 共4页
序列检测器 verilog_第2页
第2页 / 共4页
序列检测器 verilog_第3页
第3页 / 共4页
序列检测器 verilog_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

《序列检测器 verilog》由会员分享,可在线阅读,更多相关《序列检测器 verilog(4页珍藏版)》请在金锄头文库上搜索。

1、五邑大学实验报告实验课程名称序 列 检 测 器院系名称:信息学院专业名称:电子信息工程实验项目名称:EDA实验班级 ap07053 学号:ap0705307报告人:黃少昌实验五 序列检测器一、 实验目的:1、 掌握用Verilog HDL实现状态机的方法;2、 利用状态机设计一个序列检测器。二、 实验原理:序列检测器在数据通讯,雷达和遥测等领域中用与检测步识别标志。它是一种用来检测一组或多组序列信号的电路。例如检测器收到一组串行码1110010后,输出标志1,否则,输出0。考查这个例子,每收到一个符合要求的串行码就需要用一个状态进行记忆。串行码长度为7位,需要7个状态;另外,还需要增加一个“未

2、收到一个有效位”的状态,共8个状态;S0S7,状态标记符的下标表示有几个有效位被读出。画出状态转换图,如图5-1所示,很显然这是一个莫尔状态机。8个状态机根据编码原则可以用3位二进制数来表示。0111101110000S0/0S1/0S2/0S3/0S7/1S6/0S5/0S4/0001图 5-1 序列检测器状态变化图三、 设计任务及要求:1、 用状态机实现一序列检测器,即检测到串行码1110010后,检测器输出1,否则输出0;2、 设计输入采用Verilog HDL语言;3、 对设计进行仿真;4、 把设计下载到试验箱验证。四、 设计提示:1、 状态机是实验时序电路的有效工具,用状态机实现时序

3、检测器就是典型例子;2、 状态机的Verilog HDL 实现基本有固定模式,参见教程数字系统设计与Verilog HDL(第二版)第271272页。3、 状态机实现的要点是在每个状态下,当时钟有效沿到来时,判断输入值是什么,然后决定下一状态跳转到什么地方。五、 给出设计的源程序: module seq(in,out,state,clk,reset);input in,clk,reset; output out;output2:0state;reg2:0state;reg out;parameter s0=d0,s1=d1,s2=d2,s3=d3,s4=d4,s5=d5,s6=d6,s7=d7

4、;always (posedge clk)begin if(reset) begin state=s0;out=0;end else casex(state) s0:begin if(in=0) begin state=s0;out=0;end else begin state=s1;out=0;end end s1:begin if(in=0) begin state=s0;out=0;end else begin state=s2;out=0;end end s2:begin if(in=0) begin state=s0;out=0;end else begin state=s3;out

5、=0;end end s3:begin if(in=0) begin state=s4;out=0;end else begin state=s3;out=0;end end s4:begin if(in=0) begin state=s5;out=0;end else begin state=s1;out=0;end end s5:begin if(in=0) begin state=s0;out=0;end else begin state=s6;out=0;end end s6:begin if(in=0) begin state=s7;out=1;end else begin stat

6、e=s2;out=0;end end s7:begin if(in=0) begin state=s0;out=0;end else begin state=s1;out=0;end end default:state=s0;endcaseendendmodule六、 给出序列检测器的仿真波形图:七、 心得体会:此次实验,我觉得既锻炼了我们的设计,由简单的抽象理解到实际认知。特别的是使用M2软件的仿真使我对它们的功能有了形象的认识,而且还可以帮助我们检查出错误,为以后的工作需要奠定了一定的基础。在这次实验中,也要感谢同学的帮助,相互讨论中也使我学习了他们不同的思考方式,使我明白了团体合作是很重

7、要的。通过实验,我们真正体会到EDA带来的方便;通过仿真,我们能够很形象地了解到原理图的功能。体验到真实实验中的情境,增加了对电子实验和电子设计的信心。通过本设计,进一步加深了对Verilog HDL语言的理解及应用,理解了数码管的工作和译码的整个思路。用Verilog HDL语言来设计电路,思路更清晰,更简洁,实现起来更加的得心应手。这就是电子系统EDA最好的体现八、 思考题:1、 状态机处于S3状态时,若再输入一个“1”,为什么状态机仍停留在S3状态,而不是其他状态? 答:因为连续四个1了,而检测要求的是三个1;所以检测还是当作连续三个1来算。2、 什么叫一点热码编码状态机? 答:一位热码编码。采用这种编码方式,相对于格雷码来说虽然增加了触发器,但是节省了组合电路。提高了电路的速度和可靠性。例如5位的热码编码(5b00001,5b00010,5b00100,5b01000,5b10000;)。与格雷码一样都是一位进行变化,唯一不同的是,一位热码是不需要进行逻辑运算的。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 科普知识

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号