欢迎来到天天文库
浏览记录
ID:29734566
大小:19.88 KB
页数:10页
时间:2018-12-22
《eda实验,实验报告》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划eda实验,实验报告 《EDA技术》实验报告 实验名称:序列检测器设计 实验日期:X月XX号指导教师:XXX 姓名:XXXXXX 学号:XXXXXX班级:XXXXXX 杭州电子科技大学 一、实验设计要求: 实验目的:用状态机实现序列检测器的设计,了解一般状态机的设计与应用。 实验内容:根据节有关原理介绍,利用QuartusII对例8-4进行文本编辑输入、仿真并给出仿真波形,了解控制信号的时序,最后进行引脚锁定并完成硬件测试实验。由于本例
2、中的状态机对于序列的检测不能连续,也就是一旦出现不符合的数字时就会全部归零处理,这样实际上并不是最完备的检测手段,请对例中的代码稍作修改来完成连续序列检测。 二、设计原理: 状态机原理图: 图2-1状态机状态转换图 图2-2状态机模块示意图 原理解释:目的-通过该培训员工可对保安行业有初步了解,并感受到安保行业的发展的巨大潜力,可提升其的专业水平,并确保其在这个行业的安全感。为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划 状态转换图如上图所示,下面的是模块的示意图。状态机有几个接口,分别
3、是时钟端clk,数据输入端din,复位端rst和输出端out。每个时钟上升沿读入外部的一位数据,根据读到的数据,状态机进行当前状态的改变,而复位端的功能是将状态机的状态恢复到初始态。只有检测到这个数据序列的时候状态机才会输出一个1即高电平信号。 如图的状态转换图可以看出,设计的状态机输入的数据是可重复的,即并不是每次都要依次输入规定的数据进入下一状态,否则就归回初始态;而是可以重复的。比如要求是检测序列的,可是输入刚开始是1后面一直是1,这时候不会不断地复位,而是会保持在”11”状态也就是第二状态,等待出现0进入下一状态。 三、实验程序: 序列检测状态及电路
4、程序: Input包括时钟clk、数据输入din、复位端rst;output包括一个out端,为了表示9个状态,声明了一个4位的寄存器,因为四位可以表示最多16个状态;为了保存次态的信息,又声明了一个4位的寄存器,用来存储次态的信息,为了下次上升沿读取。主程序中包括两个过程语句,一个是用来对状态机的状态进行操作的,如果复位有效,下一个时钟上升沿就是将状态变成初始态;而如果不是就在下一个时钟上升沿将状态变成次态。目的-通过该培训员工可对保安行业有初步了解,并感受到安保行业的发展的巨大潜力,可提升其的专业水平,并确保其在这个行业的安全感。为了适应公司新战略的发展,保
5、障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划 另一个过程语句是用来对次态的状态进行赋值、改变的。它根据现在的状态检测输入的数据的高低电平来决定次态是什么样的状态,并将次态用寄存器保存起来。声明两个寄存器的,就是为了一个用来保存次态信息,一个用来保存现态。moduleseries_chk(din,out,clk,rst); inputclk,din,rst;outputout;reg[3:0]st,nst;parameters0=07,s1=08,s2=09,s3=10,s4=11,s5=12,s6=13,s7=14,s8
6、=15;//------------------------------------------------------------------------------------------------------------------//always@(posedgeclkorposedgerst)begin/*只有在时钟的上升沿来到时,next_state才被保存为current_state*/end//-----------------------------------------------------------------------------
7、-------------------------------------//always@(stordin)begin/*next_state根据current_state的状态一直在变化并且跟时钟是独立的,不依赖于时钟*/end//------------------------------------------------------------------------------------------------------------------//assignout=(st==s8);case(st)s0:if(din==1)nst、状态机的类型目
8、的-通过该
此文档下载收益归作者所有