华南理工大学数字系统设计实验3报告
数电实验3实验报告04信息工程3吴炽羽(18号)

华南理工大学实验报告课程名称数字电子技术实验电信学院系信息工程专业(04)3 班姓名吴炽羽实验名称发电机控制电路的设计实验日期4月19日指导教师马楚仪(报告内容:目的、仪器装置、简单原理、数据记录及结果分析等)一、实验目的1.学会对具体事件进行归纳和抽象分析,了解逻辑器件功能表及其使用方法。
2.掌握一般组合逻辑电路的特点及分析、设计方法。
3.学会对所设计的电路进行静态、动态功能测试。
4.掌握用双踪数字示波器测量系统多路信号波形的方法。
二、实验器材1.TDS-2002数字双踪示波器。
2.DLBS-1型数字逻辑箱3.VC9807A数字万用表4.四2输入与非门74LS00,四2输入异或门74LS86,四位同步计数器74LS161。
三、实验内容1.设计任务某工厂有三个车间A、B、C和一个自备电站,站内有两台发电机X和Y。
Y的发电能力是X的两倍。
如果一个车间开工,启动X就能满足要求;如果两个车间开工,启动Y就能满足;如果三个车间同时开工,则X和Y都应全部启动。
请用两个异或门和三个与非门设计控制发电机X和Y启动的控制电路。
2.简要提示设三个车间A、B、C开工时为逻辑1,停工时为逻辑0;发电机X、Y启动时为逻辑1,停止时为逻辑0。
按题意列出A、B、C与X、Y的逻辑真值表,经过化简求出X和Y的逻辑表达式,画出实验原理图。
A、B、C与化简求出X和Y的逻辑表达式X=C B A +C B A +C B A +ABC=(A ⊕B)⊕CY=ABA C AB ABC C B A BC A C B )(⊕=+++实验原理图四、实验内容1.对控制电路的静态测试将 A 、B 、C 端分别接到三个电平开关,将输出端 X 和 Y 分别接两只指示灯。
操纵三个电平开关(代表车间开工情况),观察并记录两只指示灯的发光情况,检验是否符合设计要求:2.对控制电路的动态测试检查计数器是否正常工作,用四位二进制计数器74LSl61 接线,并在第2脚输入脉冲,QC 、QB 、QA 端,依次自左至右接三只指示灯,在秒脉冲作用下,三只灯应按三位二进制的规律发光。
华南理工大学数字信号处理实验三实验报告

% 默认采样率 4000Hz,通带波纹 1dB,最小阻带衰减 40dB
% 符号
符号说明
% fp
通带截止频率,单位:Hz
% fs
阻带截止频率,单位:Hz
% fsam
采样率,单位:Hz
% pr
通带波纹(passband ripple),单位:dB
% minsa
最小阻带衰减(minimum stopband attenuation),单位:dB
3.1 低通滤波器设计
3.1.1 实验题目
一、 用双线性变换法设计如下 IIR 滤波器,(可以选择 butteworth or chebyshey) 滤波器的性能指标:
低通滤波器:通带截止频率 1000Hz,阻带截止频率 1200Hz,采样率 4000Hz, 通带波纹 1dB,最小阻带衰减 40dB; 二、要画出滤波器的频率响应特性(用 freqz 函数)
2.2 低通滤波器
低通滤波器是容许低于截止频率的信号通过,但高于截止频率的信号不能通 过的一种滤波器。其频谱响应形如图 1 所示。
图 1 低通滤波器频谱相应示例
2.3 高通滤波器
高通滤波器是一个使高频率比较容易通过而阻止低频率通过的系统。它去掉 了信号中不必要的低频成分或者说去掉了低频干扰。其频谱相应如图 2。
数字 IIR 滤波器。 掌握 MATLAB 函数书写,特别是用 MATLAB 函数封装自己设计的滤波器,
并实现参数可调。
2 实验原理
2.1 IIR 滤波器
按脉冲响应来分类,数字滤波器分为 IIR 和 FIR,即无限冲激响应滤波器和 有限冲激响应滤波器;其中 IIR 网络中有反馈回路,FIR 网络中没有反馈回路。 IIR 滤波器是无限脉冲响应滤波器,又称递归型滤波器,即结构上带有反馈环路。 特点:
数电实验3实验报告04信息工程3吴炽羽(18号)

华南理工大学实验报告课程名称数字电子技术实验电信学院系信息工程专业(04)3 班姓名吴炽羽实验名称发电机控制电路的设计实验日期4月19日指导教师马楚仪(报告内容:目的、仪器装置、简单原理、数据记录及结果分析等)一、实验目的1.学会对具体事件进行归纳和抽象分析,了解逻辑器件功能表及其使用方法。
2.掌握一般组合逻辑电路的特点及分析、设计方法。
3.学会对所设计的电路进行静态、动态功能测试。
4.掌握用双踪数字示波器测量系统多路信号波形的方法。
二、实验器材1.TDS-2002数字双踪示波器。
2.DLBS-1型数字逻辑箱3.VC9807A数字万用表4.四2输入与非门74LS00,四2输入异或门74LS86,四位同步计数器74LS161。
三、实验内容1.设计任务某工厂有三个车间A、B、C和一个自备电站,站内有两台发电机X和Y。
Y的发电能力是X的两倍。
如果一个车间开工,启动X就能满足要求;如果两个车间开工,启动Y就能满足;如果三个车间同时开工,则X和Y都应全部启动。
请用两个异或门和三个与非门设计控制发电机X和Y启动的控制电路。
2.简要提示设三个车间A、B、C开工时为逻辑1,停工时为逻辑0;发电机X、Y启动时为逻辑1,停止时为逻辑0。
按题意列出A、B、C与X、Y的逻辑真值表,经过化简求出X和Y的逻辑表达式,画出实验原理图。
A、B、C与化简求出X和Y的逻辑表达式X=C B A +C B A +C B A +ABC=(A ⊕B)⊕CY=ABA C AB ABC C B A BC A C B )(⊕=+++实验原理图四、实验内容1.对控制电路的静态测试将 A 、B 、C 端分别接到三个电平开关,将输出端 X 和 Y 分别接两只指示灯。
操纵三个电平开关(代表车间开工情况),观察并记录两只指示灯的发光情况,检验是否符合设计要求:2.对控制电路的动态测试检查计数器是否正常工作,用四位二进制计数器74LSl61 接线,并在第2脚输入脉冲,QC 、QB 、QA 端,依次自左至右接三只指示灯,在秒脉冲作用下,三只灯应按三位二进制的规律发光。
华工 数字逻辑 实验3

华工数字逻辑实验3实验目的本实验旨在通过数字逻辑器件的应用,让学生对数字逻辑电路的设计和实现有更深入的理解。
通过完成本实验,学生可以进一步掌握计数器的原理和设计方法,掌握计数器的工作原理和应用。
实验内容本实验要求设计和实现一个4位二进制计数器,能够实现从0到15之间的循环计数。
计数器的工作方式为正向计数,即从0开始逐渐增加,当计数器达到15时,重新从0开始。
计数器的计数速度可通过外部时钟频率控制。
实验步骤步骤一:电路设计1.确定所需的元件类型和数量。
根据实验要求,我们需要使用4个D触发器和适当数量的逻辑门来设计计数器电路。
2.根据计数器的工作原理,设计电路的逻辑功能。
考虑计数器的逻辑功能,我们可以将每个D触发器的输出分别连接到下一个D触发器的时钟输入端。
3.将D触发器的时钟输入端和适当的逻辑门连接,以实现计数器的工作原理。
步骤二:电路实现1.根据设计的电路图,将所需的元件连接起来,以实现计数器的功能。
2.完成电路的布线和连接,注意检查连接的正确性。
3.确保电路输入和输出的可靠连接,以便外部信号能够正确传递到计数器。
步骤三:电路测试1.在实验台上接通电源,确保电路的正常供电。
2.使用示波器测量和观察计数器的输出波形,验证计数器的正常工作。
3.使用示波器观察和测量时钟信号的频率,确保计数器的计数速度符合要求。
实验结果经过实验验证,所设计的4位二进制计数器能够正常工作,并根据外部时钟信号实现从0到15的循环计数。
通过示波器观察和测量计数器的输出波形,可以清楚地看到计数器的工作状态,实现了预期的功能。
实验总结通过本实验,我深入学习了数字逻辑电路的设计和实现方法。
通过实际动手设计和搭建电路,我对计数器的工作原理和应用有了更深入的理解。
在实验过程中,我发现了一些问题和挑战。
例如,电路连接错误会导致计数器不能正常工作,需要仔细检查和排除问题。
另外,时钟信号的频率控制也是一个关键的问题,需要确保时钟频率满足实验要求。
数字系统设计实验报告

一、实验目的1. 理解数字系统设计的基本概念和流程。
2. 掌握数字电路的基本设计方法和技巧。
3. 熟悉常用数字集成电路的使用方法。
4. 培养实际动手能力和团队协作精神。
二、实验内容本次实验主要围绕数字系统设计展开,包括以下几个方面:1. 数字电路原理图绘制与仿真2. 数字系统硬件描述语言(HDL)编程3. 顶层模块设计4. 系统仿真与调试三、实验步骤1. 数字电路原理图绘制与仿真(1)根据实验要求,设计数字电路原理图,如数字时钟、移位寄存器等。
(2)使用Multisim等仿真软件对原理图进行仿真,验证电路功能。
2. 数字系统硬件描述语言(HDL)编程(1)根据原理图,使用Verilog或VHDL等HDL语言编写代码。
(2)对代码进行语法检查,确保代码正确。
3. 顶层模块设计(1)根据实验要求,设计顶层模块,如数字时钟控制器、移位寄存器控制器等。
(2)将底层模块(如计数器、触发器等)集成到顶层模块中。
4. 系统仿真与调试(1)使用仿真软件对顶层模块进行仿真,验证系统功能。
(2)根据仿真结果,对代码进行修改和优化,直至系统功能满足要求。
四、实验结果与分析1. 数字电路原理图绘制与仿真(1)原理图设计:根据实验要求,设计了一个数字时钟电路原理图,包括分频器、计数器、触发器等模块。
(2)仿真结果:通过仿真软件对原理图进行仿真,验证了电路功能。
2. 数字系统硬件描述语言(HDL)编程(1)代码编写:使用Verilog语言编写了数字时钟电路的代码,包括分频器、计数器、触发器等模块。
(2)代码验证:通过语法检查,确保代码正确。
3. 顶层模块设计(1)顶层模块设计:根据实验要求,设计了一个数字时钟控制器顶层模块,将底层模块集成到顶层模块中。
(2)系统仿真:通过仿真软件对顶层模块进行仿真,验证了系统功能。
4. 系统仿真与调试(1)系统仿真:通过仿真软件对顶层模块进行仿真,验证了系统功能。
(2)调试:根据仿真结果,对代码进行修改和优化,直至系统功能满足要求。
华南理工大学数字系统设计实验3报告资料

实验三基于状态机的交通灯控制地点:31号楼312房;实验台号:12实验日期与时间:2017年12月08日评分:预习检查纪录:批改教师:报告内容:一、实验要求1、开发板上三个led等分别代表公路上红黄绿三种颜色交通灯。
2、交通灯状态机初始状态为红灯,交通灯工作过程依次是红→绿→黄→红。
3、为了方便观察,本次实验要求红灯的显示时间为9s,绿灯显示时间为6s,黄灯显示时间为3s,时间需要倒计时,在数码管上显示。
编程之前要求同学们先画好ASM图。
4、1Hz分频模块请采用第二次实验中的内容,7段码显示模块请参考书本相关内容。
5、第三次实验课用到EP2C8Q208C8通过74HC595驱动数码管,有两种方法写该模块代码:方法1,用VHDL语言写,(自己写VHDL代码有加实验分)。
方法2,可调用verilog数码管驱动模块,该模块在附件“seg.zip”中。
和其它VHDL编写的模块可以混搭在一个电路图中使用。
EP2C8Q208C8的SCTP,SHCP,SER_DATA数码管信号线通过两块74HC595集成块,再驱动数码管。
6、芯片型号:cyclone:EP2C8Q208C8,开发板所有资料都在“新板”附件中,其中管脚配置在实验要求中是不对的,以“新板”附件中为准。
二、实验内容1设计要求开发板上三个led等分别代表公路上红黄绿三种颜色交通灯。
交通灯状态机初始状态为红灯,交通灯工作过程依次是红→绿→黄→红。
本次实验要求红灯的显示时间为9s,绿灯显示时间为6s,黄灯显示时间为3s,时间需要倒计时,在数码管上显示。
2设计思路(1)数码管驱动第三次实验课用到EP2C8Q208C8通过74HC595驱动数码管,有两种方法写该模块代码:方法1,用VHDL语言写,(自己写VHDL代码有加实验分)。
方法2,可调用verilog数码管驱动模块,该模块在附件“seg.zip”中。
和其它VHDL 编写的模块可以混搭在一个电路图中使用。
华工 数字逻辑 实验3
华工数字逻辑实验3实验目的本实验旨在通过实践学习数字逻辑电路中的组合逻辑电路设计和实现。
实验要求学生能够掌握组合逻辑电路的基本原理和设计方法,并能够熟练地使用逻辑门和信号发生器进行电路搭建和测试。
实验原理在数字逻辑电路中,组合逻辑电路是由逻辑门和逻辑门之间的连线组成的。
逻辑门是实现逻辑函数的基本元件,其输入输出关系可以用真值表来表示。
通过组合逻辑电路的设计和搭建,可以实现各种逻辑功能。
本实验中,我们将学习并实践以下几个实验题目: 1. 实现一个4位二进制加法器电路 2. 实现一个4位比较器电路 3. 实现一个4位移位寄存器电路实验设备和材料1.数字电路实验箱2.逻辑门芯片:AND、OR、XOR、ADD、SHIFT3.4位数码管实验步骤实验题目1:4位二进制加法器电路步骤1:设计电路的逻辑功能4位二进制加法器电路的逻辑功能是将两个4位二进制数相加,并输出相加结果。
步骤2:搭建电路根据逻辑功能设计,搭建4位二进制加法器电路。
使用AND、OR、XOR芯片搭建逻辑门,使用ADD芯片实现加法器功能。
步骤3:测试电路连接信号发生器和电路输入,设置合适的输入信号,观察电路输出结果。
实验题目2:4位比较器电路步骤1:设计电路的逻辑功能4位比较器电路的逻辑功能是比较两个4位二进制数的大小,并输出比较结果。
步骤2:搭建电路根据逻辑功能设计,搭建4位比较器电路。
使用AND、OR、XOR芯片搭建逻辑门。
步骤3:测试电路连接信号发生器和电路输入,设置合适的输入信号,观察电路输出结果。
实验题目3:4位移位寄存器电路步骤1:设计电路的逻辑功能4位移位寄存器电路的逻辑功能是将输入的4位二进制数向左/右移位,并输出结果。
步骤2:搭建电路根据逻辑功能设计,搭建4位移位寄存器电路。
使用AND、OR、XOR芯片搭建逻辑门,使用SHIFT芯片实现移位功能。
步骤3:测试电路连接信号发生器和电路输入,设置合适的输入信号,观察电路输出结果。
实验结果分析与结论实验题目1:4位二进制加法器电路通过测试电路,我们可以得到4位二进制加法器电路的正确输出结果。
数字系统的设计与实验实验报告
数字系统的设计与实验学院:专业:班级:学号:姓名指导老师2013 年12月 10 日实验一原码反码发生器一实验目的:1、掌握组合逻辑电路的基本设计方法。
2、学习波形仿真的方法。
3、加深对最简单的二进制原码、反码的理解,灵活运用基本的逻辑门。
二实验内容1、设计的电路应具备以下功能:A.包含如下端口:一个选择信号端口,一个8位二进制输入端口,一个原码/反码输出端口。
B. 选择信号的逻辑状态为0时输出原码;逻辑状态为1时输出反码。
2、完成电路设计。
3、对设计的正确性进行验证。
三实验要求1、列出所要实现的功能的真值表。
2、画出电路的逻辑图。
3、编写用VHDL语言描述的源程序。
library ieee;use ieee.std_logic_1164.all;entity shiyan1 isport (cin : in std_logic_vector(7 downto 0);fin : in std_logic;cout: out std_logic_vector(7 downto 0));end shiyan1;architecture behave of shiyan1 isbeginprocess(fin)begincase fin iswhen '1' => cout <= not cin;when '0' => cout <= cin;when others => null;end case;end process;end behave;4、在MAX 软件平台上完成编译和功能仿真。
一、信号端口为0时二、信号端口为1总结:经过上个实验后,对maxplu件有了一定了解,对于 VHDL也更加熟悉,首先构造真值表,画出逻辑电路图,然后编写程序生成仿真波形图。
在编写程序的时候也出现了一些错误,比如是将单个字符用双引号,结果编译通不过。
老是报错。
华工数字系统设计hw3
1.Encoders are used to encode discrite data into a coded form and decoders are usedto convert it back into its original undecoded form. An encoder that has 2n(or less) input lines encodes input data to provide n encoded output lines. The truth table for an 8-3 binary encoder(8 inputs and 3 outputs) is shown in followed Table. It is assumed that only one input has a value of 1 at any given, otherwise the output has some undefined value and the circuit is meaningless. Please write the VHDL model of the given encoder and write the testbench to verify your model.2.The truth table for a priority 8-3 binary encoder(8 inputs and 3 outputs) is shownin followed Table. Please write the VHDL model of the given encoder and write the testbench to verify your model.3.The truth table for a priority 3-8 binary decoder(3 inputs and 8 outputs) is shownin followed Table. Please write the vhdl model of the given encoder and write the testbench to verify your model.4.The truth table for a 3-6 binary decoder(3 inputs and 8 outputs) with enable isshown in followed Table. Please write the vhdl model of the given encoder and write the testbench to verify your model.5、用可综合的VHDL程序描述设计一个六选一的多路选择器。
华南理工大学数字系统设计实验4报告
//????? 0~F ?????? parameter SEG_NUM0 SEG_NUM1 SEG_NUM2 SEG_NUM3 SEG_NUM4 SEG_NUM5 SEG_NUM6 SEG_NUM7 SEG_NUM8 SEG_NUM9 SEG_NUMA SEG_NUMB SEG_NUMC SEG_NUMD = 8'hc0, = 8'hf9, = 8'ha4, = 8'hb0, = 8'h99, = 8'h92, = 8'h82, = 8'hF8, = 8'h80, = 8'h90, = 8'h88, = 8'h83, = 8'hc6, = 8'ha1, 8
实验日期与时间: 预习检查纪录:
2017 年 12 月 22 日
批改教师:
报告内容:
一、实验要求
运用状态机设计按键控制数码管显示的电路系统 设计要求: 1、 按键控制数码管显示,当按下 S2 时,Q4 数码管显示 1;再次按下 S2,Q4 数码管 显示 2; 2、 第三次按下 S2,Q4 数码管显示 3;第四次按下 S2 时,Q4 数码管显示 4.第五次按 下 S2 时 Q4 又从 1 开始显示,如此反复。 3、 检测按键是否按下需要消抖,消抖程序请同学们参考附录程序,参考程序是利用四 个按键控制四个 LED 灯的亮灭。请同学们在读懂参考程序的基础上将其改编为符合要 求 1 的程序。 4、 参考程序是普通的控制程序,本实验要求同学们利用状态机来编写程序。
SIGNAL key_rst_r: std_logic; SIGNAL key_rst_an:std_logic; SIGNAL low_sw: SIGNAL low_sw_r: std_logic; std_logic;
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验三基于状态机的交通灯控制地点:31号楼312房;实验台号:12实验日期与时间:2017年12月08日评分:预习检查纪录:批改教师:报告内容:一、实验要求1、开发板上三个led等分别代表公路上红黄绿三种颜色交通灯。
2、交通灯状态机初始状态为红灯,交通灯工作过程依次是红→绿→黄→红。
3、为了方便观察,本次实验要求红灯的显示时间为9s,绿灯显示时间为6s,黄灯显示时间为3s,时间需要倒计时,在数码管上显示。
编程之前要求同学们先画好ASM图。
4、1Hz分频模块请采用第二次实验中的内容,7段码显示模块请参考书本相关内容。
5、第三次实验课用到EP2C8Q208C8通过74HC595驱动数码管,有两种方法写该模块代码:方法1,用VHDL语言写,(自己写VHDL代码有加实验分)。
方法2,可调用verilog数码管驱动模块,该模块在附件“seg.zip”中。
和其它VHDL编写的模块可以混搭在一个电路图中使用。
EP2C8Q208C8的SCTP,SHCP,SER_DATA数码管信号线通过两块74HC595集成块,再驱动数码管。
6、芯片型号:cyclone:EP2C8Q208C8,开发板所有资料都在“新板”附件中,其中管脚配置在实验要求中是不对的,以“新板”附件中为准。
二、实验内容1设计要求开发板上三个led等分别代表公路上红黄绿三种颜色交通灯。
交通灯状态机初始状态为红灯,交通灯工作过程依次是红→绿→黄→红。
本次实验要求红灯的显示时间为9s,绿灯显示时间为6s,黄灯显示时间为3s,时间需要倒计时,在数码管上显示。
2设计思路(1)数码管驱动第三次实验课用到EP2C8Q208C8通过74HC595驱动数码管,有两种方法写该模块代码:方法1,用VHDL语言写,(自己写VHDL代码有加实验分)。
方法2,可调用verilog数码管驱动模块,该模块在附件“seg.zip”中。
和其它VHDL 编写的模块可以混搭在一个电路图中使用。
EP2C8Q208C8的SCTP,SHCP,SER_DATA 数码管信号线通过两块74HC595集成块,再驱动数码管。
(2)交通灯流程设计我根据实验要求,将实验设计分为6部分:分频器模块、复位部分、红灯部分、黄灯(红转黄时)部分、绿灯部分、扩位模块。
其中复位部分包括1个状态:reset0,红灯部分包括9个状态:r1到r9,绿灯部分包括6个状态:r1到r6,黄灯部分包括3个状态:y1到y3。
其中,对脉冲信号进行2的n次方分之一的分频,实现分频器分频。
扩位模块采用补0操作实现将4位二进制数转为16位二进制数。
3ASM 图设计17个状态,包括1个复位状态,9个红灯状态,6个绿灯状态,交通灯控制的ASM 图如图1所示。
图1交通灯控制的ASM 图4VHDL 描述(1)分频器描述-----------------------------------------------------------VHDL experience2--FENPINQI--DIV 50MHz into 1Hz reset0g1r1y1r9r8r7r6r5r4r3r2g2g3g4g6g5y3y2红灯红灯绿灯--Quartus II version:Quartus II9.0--Chen Yirong--2017.11.24-----------------------------------------------------------include libraryLIBRARY IEEE;--IEEE Library--include packageUSE IEEE.std_logic_1164.ALL;--use packageUSE IEEE.std_logic_unsigned.all;-----------------------------------------------------------introduce entityENTITY clkdiv_15dianzhuo_12is--shiti--change n to change frequenceGENERIC(n:integer:=50000000);--leishucanshuPORT(clk:IN std_logic;Y:OUT std_logic);END ENTITY;-----------------------------------------------------------describe architectureARCHITECTURE behav OF clkdiv_15dianzhuo_12IS--structure SIGNAL count:integer RANGE n-1DOWNTO0:=n-1;--COUNTER BEGINPROCESS(clk)BEGINIF(rising_edge(clk))thencount<=count-1;--dijianif(count>=n/2)thenY<='0';--fenpinelseY<='1';end if;if(count<=0)thencount<=n-1;end if;END IF;END PROCESS;END behav;---------------------------------------------------------(2)交通灯控制描述-----------------------------------------------------------VHDL experience3--traffic_light_machinestate--san jin cheng zhuang tai ji--Quartus II version:Quartus II9.0--Chen Yirong--2017.12.08-----------------------------------------------------------include libraryLIBRARY IEEE;--IEEE Library --include packageUSE IEEE.std_logic_1164.ALL;--use package USE IEEE.std_logic_unsigned.all;-----------------------------------------------------------introduce entityENTITY traffic_light_machinestate is--shiti PORT(clk:IN std_logic;--clockrst_n:IN std_logic;--reset,lowlevel validred_light:OUT std_logic;--low level validgreen_light:OUT std_logic;--low level validyellow_light:OUT std_logic;--low level validholdtime:OUT integer range0TO9);--show timeEND ENTITY;-----------------------------------------------------------describe architectureARCHITECTURE Behav OF traffic_light_machinestate IS--jiegouti--describe all stateTYPE state_type IS(reset0,r1,r2,r3,r4,r5,r6,r7,r8,r9,g1,g2,g3,g4,g5,g6,y1,y2,y3); SIGNAL present_state,next_state:state_type;--shuang jin cheng zhuang tai jiBEGIN-----------------------------------------------------------seq process:create stateseq:PROCESS(clk,rst_n)BEGINIF(rst_n='0')THEN--fu wei shi hong deng liangpresent_state<=reset0;ELSIF(rising_edge(clk))THENpresent_state<=next_state;END IF;END PROCESS;-----------------------------------------------------------com process:create next state and output logiccom:PROCESS(next_state)BEGINred_light<='0';green_light<='1';yellow_light<='1';holdtime<=0;CASE present_state ISWHEN reset0=>--fu wei stategreen_light<='1';yellow_light<='1';holdtime<=0;next_state<=r1;WHEN r1=>--red light rest time=9 red_light<='0';green_light<='1';yellow_light<='1';holdtime<=9;next_state<=r2;WHEN r2=>--red light rest time=8 red_light<='0';green_light<='1';yellow_light<='1';holdtime<=8;next_state<=r3;WHEN r3=>--red light rest time=7 red_light<='0';green_light<='1';yellow_light<='1';holdtime<=7;next_state<=r4;WHEN r4=>--red light rest time=6 red_light<='0';green_light<='1';yellow_light<='1';holdtime<=6;next_state<=r5;WHEN r5=>--red light rest time=5green_light<='1';yellow_light<='1';holdtime<=5;next_state<=r6;WHEN r6=>--red light rest time=4 red_light<='0';green_light<='1';yellow_light<='1';holdtime<=4;next_state<=r7;WHEN r7=>--red light rest time=3 red_light<='0';green_light<='1';yellow_light<='1';holdtime<=3;next_state<=r8;WHEN r8=>--red light rest time=2 red_light<='0';green_light<='1';yellow_light<='1';holdtime<=2;next_state<=r9;WHEN r9=>--red light rest time=1 red_light<='0';green_light<='1';yellow_light<='1';holdtime<=1;next_state<=g1;WHEN g1=>--green light rest time=6green_light<='0';yellow_light<='1';holdtime<=6;next_state<=g2;WHEN g2=>--green light rest time=5 red_light<='1';green_light<='0';yellow_light<='1';holdtime<=5;next_state<=g3;WHEN g3=>--green light rest time=4 red_light<='1';green_light<='0';yellow_light<='1';holdtime<=4;next_state<=g4;WHEN g4=>--green light rest time=3 red_light<='1';green_light<='0';yellow_light<='1';holdtime<=3;next_state<=g5;WHEN g5=>--green light rest time=2 red_light<='1';green_light<='0';yellow_light<='1';holdtime<=2;next_state<=g6;WHEN g6=>--green light rest time=1green_light<='0';yellow_light<='1';holdtime<=1;next_state<=y1;WHEN y1=>--yellow light rest time=3red_light<='1';green_light<='1';yellow_light<='0';holdtime<=3;next_state<=y2;WHEN y2=>--yellow light rest time=2red_light<='1';green_light<='1';yellow_light<='0';holdtime<=2;next_state<=y3;WHEN y3=>--yellow light rest time=1red_light<='1';green_light<='1';yellow_light<='0';holdtime<=1;next_state<=r1;END CASE;END PROCESS;END Behav;--------------------------------------------------------------(3)将四位二进制数转为16位二进制数描述-----------------------------------------------------------VHDL experience3--add_bit--san jin cheng zhuang tai ji--Quartus II version:Quartus II9.0--Chen Yirong--2017.12.08-----------------------------------------------------------include libraryLIBRARY IEEE;--IEEE Library--include packageUSE IEEE.std_logic_1164.ALL;--use packageUSE IEEE.std_logic_unsigned.all;-----------------------------------------------------------introduce entityENTITY add_bit is--shitiPORT(clk:IN std_logic;input4bit:IN std_logic_vector(3DOWNTO0);output16bit:OUT std_logic_vector(15DOWNTO0));END ENTITY;-----------------------------------------------------------describe architectureARCHITECTURE behav OF add_bit ISBEGIN---------------------------------------------------------output16bit<="ZZZZZZZZZZZZZZZZ";PROCESS(clk,input4bit)BEGINIF(rising_edge(clk))THENoutput16bit<="000000000000"&input4bit;END IF;END PROCESS;END behav;---------------------------------------------------------三、实验过程记录(流程图或者实验逻辑思路过程)1仿真实验整体电路图如图2所示。