




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
《计算机EDA设计》实验教程实验五
交通红绿灯控制器北航计算机学院艾明晶4/2/20231内容概要实验目的实验要求实验原理实验方案实验内容实验报告4/2/20232了解交通红绿灯控制器的工作原理。掌握建立状态机的逻辑模型的方法。掌握状态机的实现和多个状态机的组合使用方法实验目的4/2/20233在正常运行状态下,两组交通灯按以下规律自动进行转换,在不同时刻分别放行不同方向上的车辆: (绿,红)50s(黄绿,红)5s(黄,红)20s(红黄,红)20s(红,黄)10s (红,绿)50s(红,黄绿)5s(红,黄)20s(红,红黄)20s(黄,红)10s (绿,红)50s……4/2/20235人工放行:若某一方向发生交通阻塞,则交通警察按下该方向的放行按钮来人工控制放行该方向,则红绿灯自动将相应方向的道路放行,此后不会自动放行另一个方向的道路,直到疏通后,按“恢复到正常状态”按钮,重新进入正常运行状态。如果某方向处于人工放行的状态,应有指示灯指示这一情况。4/2/20236人工控制放行遵循如下限制规则:有黄灯亮时,不允许立刻改变放行方向,必须按正常运行到所需放行的方向时,才保持放行该方向;每个方向的放行时间不得小于某一最小值(假定为30秒钟),以免车辆频繁起停。只有在(绿,红)20s和(红,绿)20s状态下,可以人工控制改变放行方向,即直接跳转到下一状态。4/2/20237状态机的次态是现态及输入信号的函数,输出信号根据状态机的现态或输入信号而定。状态机可分为两类:摩尔(Moore)型状态机和米里(Mealy)型状态机。Moore型状态机,其输出只为状态机当前状态的函数,而与输入无关。Mealy型状态机,其输出不仅与状态机当前状态有关,而且与输入有关。
4/2/20239输出现态次态现态输入次态逻辑状态寄存器输出逻辑输出现态次态现态输入次态逻辑状态寄存器输出逻辑(1)Moore型状态机(2)Mealy型状态机4/2/202310状态机的3种表示方法状态图、状态表和流程图输入/输出现态次态输入现态输出次态输出Mealy型状态图的表示
Moore型状态图的表示
4/2/202311采用VerilogHDL语言实现基于状态机的设计,就是在时钟信号的触发下,完成两项任务:(1)用case或if-else语句描述出状态的转移;(2)描述状态机的输出信号。4/2/202313输入信号和输出信号输入信号clk:时钟信号(fclk=50MHz);f1:人工放行A方向的控制信号(由“放行A”按钮产生,高有效);f2:人工放行B方向的控制信号(由“放行B”按钮产生,高有效);reset:复位信号(由“恢复到正常状态”按钮产生,高有效)。
4/2/202314输出信号f1s、f2s:人工控制时A方向、B方向的放行状态,驱动LED,高电平时点亮;s1[2..0]、s2[2..0]:交通灯信号输出,分别用于控制A方向和B方向的红、黄、绿灯的亮或灭,驱动LED,高电平时点亮。4/2/202315(1)工作状态控制器
功能:根据输入信号(f1、f2和reset)确定系统当前的工作状态是为“正常运行”状态或“A一直放行”或“B一直放行”状态。工作状态控制器是一个简单的具有三状态(normal,fr1,fr2)的有限状态机。其输入分别为人工放行A方向的控制信号f1、人工放行B方向的控制信号f2及复位信号reset(均为高有效),其输出为人工控制时A方向、B方向的放行状态.预习时请画出其状态转移图。想一想,工作状态控制器为Mealy型状态机还是Moore型状态机,为什么?4/2/202317(2)操作规则实现电路
功能:根据交通红绿灯控制器的功能要求,确定不同工作状态下计时器的计数值。可用8位计数器来实现定时计数。正常运行时,计数器按照规定的定时要求加1计数;若要人工放行某方向,只要使计时器运行到该放行状态的最后一刻时,计时器保持此时的计数值,使红绿灯信号生成器暂停状态的转移即可。4/2/202318设计技巧:将放行某方向的整个时间(50s)分为两段,前30s为正常运行状态下的最小放行时间,计时器正常计数;后20s为允许人工放行时间,可根据工作状态控制器的状态机(f1s和f2s)进行判断,是否欲人工放行另一方向,或是继续放行原方向,或是正常运行,然后根据判断结果来确定计时器的计数值。
(绿,红)正常运行正常运行可人工放行可人工放行30s50s135s155s210s105s0s(红,绿)(红,绿)(绿,红)正常运行 限制规则示意图
4/2/202319设计方案的选择图文混合设计方法:先将电路划分为几个子模块,每个子模块由VerilogHDL语言描述实现,然后生成逻辑符号,顶层文件采用图形文件来实现。纯文本描述方法:每个子模块和顶层电路的连接关系都采用VerilogHDL语言描述实现,对子模块的调用采用模块元件例化的方法。4/2/202321实验方案方案一
1.设计思路 根据控制器的逻辑模型,将整个电路分为3个子模块,即工作状态控制器state_ctrl.v、操作规则实现电路rule.v和红绿灯信号生成器sig_gen.v,它们均采用VerilogHDL语言实现。然后形成顶层图形设计文件trgl_top.bdf。
4/2/202322工作状态控制器state_ctrl.v4/2/202323红绿灯信号生成器sig_gen.v
4/2/202325顶层图形设计文件trgl_top.bdf4/2/202326方案二1.设计思路
将控制器的三部分电路有机地结合到一起,用一个文件采用VerilogHDL语言实现,文件名为trgl2.v。其中用到了两个reg型中间变量:
(1)state:工作状态控制状态机,具有3个状 态(normal,fr1,fr2)。 (2)8位寄存器cnt[7..0]:用于红绿灯信号生成器的定时计数。采用3个always模块来实现这三部分电路(实际上就是将方案一中的3个子模块的VerilogHDL描述放到一个文本文件中)。4/2/2023292.在QuartusⅡ中进行时序仿真3.设计下载用顶层文件,编程下载采用VerilogHDL语言设计顶层文件引脚锁定,编程下载.4/2/202330分别画出工作状态控制器和红绿灯信号生成器的状态转移图,操作规则实现电路的程序流程图采用方案一或方案二(有余力的同学也可以两种方案都采用),按实验要求给出的功能要求设计交通红绿灯控制器。实验内容4/2/202331仿真
使输入信号均无效,仿真至少一个循环周期的正常运行状态。观察状态机state[1..0]以及输出信号f1s、f2s、s1[2..0]和s2[2..0]的变化。将仿真结果保存为trgl_top(normal).vwf。 正常运行时的仿真参考波形一:4/2/202332
正常运行时的仿真参考波形二(210秒为一周期):4/2/202333在不同的时段给定不同的输入信号,在每种情况下观察状态机state[1..0]以及输出信号f1s、f2s、s1[2..0]和s2[2..0]的变化.4/2/202334设计下载用顶层文件 仿真完全正确后,在原设计基础上增加时钟分频模块,将输入时钟fclk=50MHz分频为f=1Hz,即T=1s,形成下载用顶层文件(可以为图形设计文件或.v文本设计文件)。对下载用顶层文件进行全编译。4/2/202335引脚锁定本实验采用模式3——所有按键为琴键式按键,即当按下键时,输出为高电平;当松开键时,输出为低电平。可通过按下键的时间的长短来控制正脉冲的宽度。clk:系统时钟信号,50MHz,接FPGA引脚Pin28。注意应将下图中的J6插到Clock0的位置,并将实验箱右下角“时钟频率选择”区域Clock0的时钟选择跳线接到50MHz的位置。4/2/202336编程下载
利用GW48-SOPC+开发系统实现设计的编程下载。编程器件为EP1C12Q240C8。使用开发系统上的晶振提供的全局时钟信号(fclk=50MHz)(Pin28),用琴键式按钮开关键1、键2和键3(均为高有效)实现人工控制放行A方向和B方向、复位功能,用8个发光二极管(高有效)D1~D8,分别显示输出信号s1[2..0]、s2[2..0]、f1s和f2s。4/2/202337在线校验下载后,仔细观察:红绿灯应按设定的时间规律自动切换,D1~D8八个LED分别对应的是:A方向的红黄绿,B方向的红黄绿,A方向的放行状态,B方向的放行状态。然后按下键1,表示欲人工放行A方向,则相应LED有显示;同时两个方向的红绿灯按正常运行规律自动切换,当运行到放行A方向时,则保持放行该方向。再按下键2,表示欲人工放行B方向,则相应LED有显示;同时两个方向的红绿灯按正常运行规律自动切换,当运行到放行B方向时,则保持放行该方向。再按下键3,表示清除人工方向的控制,则交通灯开始自动转换红黄绿灯的状态。4/2/202338给出红绿灯信号生成器和工作状态控制器的状态转移图,以及操作规则实现电路的程序流程图。给出控制器逻辑模型的仿真波形的截图,并根据仿真结果详细分析交通红绿灯控制器的工作过程。思考:当正值A方向红灯亮,B方向红灯与黄灯均亮时,若按下A方向放行按钮,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 人教版小学数学一年级上册第4单元检测卷
- 临时施工道路合同范例
- 人才申报系统开发合同范例
- 中冶赛迪合同范例
- 乙方水电安装合同范例
- 农业项目维修合同范例
- 个体户员工合同范例
- 不住员工宿舍合同范例
- 供沙协议合同范例
- 劳务派遣开票合同范例
- 财务类业务知识培训课件
- 2025年皖西卫生职业学院单招职业倾向性测试题库参考答案
- 2025年辽宁冶金职业技术学院单招职业适应性测试题库及答案(易错题)
- 教学课件-无线传感器网络技术及应用(熊茂华)
- 人教版五年级数学下册全册教案含教学反思
- 《肝衰竭诊治指南(2024版)》解读
- 《渡槽安全评价导则》
- 2025年园林绿化工(高级)考试题库及答案
- 有效沟通技巧课件
- 2024春四年级上下册音乐测试专项测试题及答案
- 多发伤骨折护理查房
评论
0/150
提交评论