- 1、本文档共10页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
PAGE 10
集成电路实验
集成电路实验状态机设计实验报告
专业:电子信息工程
姓名:江燕婷
学号:2011301200025
状态机设计(实验五)实验报告
实验目的
1. 掌握状态机设计的基本方法
2.学习利用状态机的方法实现控制电路
二.实验原理
有限状态机(Finite State Machine FSM)是时序电路设计中经常采用的一种方式,尤其适合设计数字系统的控制模块,在一些需要控制高速器件的场合,用状态机进行设计是一种很好的解决问题的方案,具有速度快、结构简单、可靠性高等优点。有限状态机非常适合用FPGA器件实现,用Verilog HDL的case语句能很好地描述基于状态机的设计,再通过EDA工具软件的综合,一般可以生成性能极优的状态机电路,从而使其在执行时间、运行速度和占用资源等方面优于用CPU实现的方案。
有限状态机一般包括组合逻辑和寄存器逻辑两部分,寄存器逻辑用于存储状态,组合逻辑用于状态译码和产生输出信号。根据输出信号产生方法的不同,状态机可分为两类:米里型(Mealy)和摩尔型(Moore)。摩尔型状态机的输出只是当前状态的函数,如图1-1所示;米里型状态机的输出则是当前状态和当前输入的函数,如图1-2所示。米里型状态机的输出是在输入变化后立即变化的,不依赖时钟信号的同步,摩尔型状态机的输入发生变化时还需要等待时钟的到来,必须在状态发生变化时才会导致输出的变化,因此比米里型状态机要多等待一个时钟周期。
图1-1 摩尔型状态机 图1-2 米里型状态机
状态机在硬件描述语言实现上,可使用单过程、双过程或三过程等不同的结构实现。状态机的状态实现上,可采用符号编码或显式数字编码。编码方式有顺序编码(自然二进制编码),一位热码(one-hot encoding),格雷(gray code)码等。顺序编码,简单状态寄存器占用少;一位热码输出译码电路简单;在状态顺序变化时,格雷码每次只有一位变化,避免产生输出信号毛刺。
三. 实验设备与软件平台
微型计算机,GW48-CK,QuartusII v5.0。
四.实验内容
(一)练习一
采用状态机moore机,110 检测状态图如下:设s0 为初始状态,s1 为检测到一个‘1’的状态,s2 为检测到连续两个‘1’的状态,s3 为检测到连续的‘110’状态。
图1-3 110序列检测器的状态转换图
假设监测器的输入、输出信号规定如下:
输入信号: 复位reset,时钟clk,被测序列in;
输出信号: 指示信号flag,‘1’表示测到110 序列,‘0’表示测到非110 序列。当前状态state,‘00’、‘01’、‘10’、‘11’分别表示三种状态s0、s1、s2、s3。
用Verilog HDL实现的代码如图1-4所示。
图1-4 110序列检测器代码实现
该程序用两个always过程描述,一个过程用来描述现态和次态时序逻辑,另一个过程描述输出逻辑。将程序用综合器生成,可以直观地观察到生成的状态图和状态表。
图1-5 110序列检测器状态机视图
图1-6 110序列检测器状态表
下面设计测试模块。为了方便观察仿真结果,将当前状态satate设为输出信号,编写testbench代码如下,
图1-7 110序列检测器testbench代码
使用ModelSim软件得到仿真结果如图1-8所示,
图1-8 110序列仿真效果图
可以发现,ModelSim仿真结果与实验要求的状态转换情况相符,也与用Quartus II生成的State Machine Viewer状态相同。在每次时钟上升沿到来时连续输入110,将输出一个高电平。
(二)练习二
设计一台饮料自动售卖机,要求如下:
图1-9
所有饮料价格均为30美分,投币值大于30美分时可以找零,有5美分和10美分找零币值。设定售卖机的输入、输出信号规定如下:
输入信号:Q(投入25美分硬币)、D(投入10美分硬币)、N(投入5美分硬币);
输出信号:DC(分配一瓶饮料)、DD(找零10美分)、DN(找零5美分)。GOT_5c、GOT_10c、GOT_15c、GOT_20c、GOT_25c、GOT_30c、GOT_35c、GOT_40c、GOT_45c、RETURN_50c表示投入的各种可能币值,RETURN_20c、RETURN_15c、RETURN_10c、RETURN_5c表示可能需要找零的币值。因此该售卖机共有14个状态。用Verilog HDL实现的代码如下。
图1-10-1
图1-10-2 图1-10-3
在Quartus II生成的状态机视图和状态表分别如下图所示。
图1-11 售货机状态
您可能关注的文档
- 房屋租赁协议书.docx
- 观察种子发芽的记录.docx
- 禁毒演讲稿范文《远离毒品,创造美好未来》.docx
- 居室装潢装修协议.docx
- 课程重新学习申请表.doc
- 卖场进场协议书.docx
- 洒水车考试试题.docx
- 山屿湖精装修总结.docx
- 试题一 Photoshop图形图像处理.docx
- 售前工程师招聘要求及试题.docx
- 浙江金华市公共资源交易中心永康市分中心编外人员招考聘用笔试历年典型考题及考点研判与答案详解.docx
- 浙江宁波慈溪市政协办公室招考聘用编外工作人员笔试历年典型考题及考点研判与答案详解.docx
- 浙江金华永康市西溪镇人民政府招考聘用笔试历年典型考题及考点研判与答案详解.docx
- 福建南平市公安局建阳分局招考聘用辅警笔试历年典型考题及考点研判与答案详解.docx
- 浙江嘉兴海盐县武原街道基层残疾人工作专职委员(公益岗位)招考聘用笔试历年典型考题及考点研判与答案详解.docx
- 浙江宁波知识产权保护中心招考聘用工作人员笔试历年典型考题及考点研判与答案详解.docx
- 浙江杭州建德市面向2024届普通高校毕业生招考聘用教师(第二批)16人笔试历年典型考题及考点研判与答案详解.docx
- 浙江省台州中学面向2024届普通高校毕业生招考聘用教师12人笔试历年典型考题及考点研判与答案详解.docx
- 湖北师范大学体育学院专任教师招考聘用笔试历年典型考题及考点研判与答案详解.docx
- 重庆市南岸区教育事业单位面向2024届高校毕业生招考聘用114人笔试历年典型考题及考点研判与答案详解.docx
文档评论(0)