数字逻辑课程设计基于VHDL的设计及仿真.doc
文本预览下载声明
河北地质大学
华信学院
数字逻辑课程设计报告
题 目 基于VHDL的 设计及仿真
姓 名 王宁
学 号 414417070403
班 号 4
指导老师 王建东 左瑞欣
成 绩
2016年6月16日
设计内容
十字路口交通灯控制系统设计
十字路口由一条东西方向的主干道(简称A道)和南北方向的支干道(简称B道)构成。 每条道路各有一组红、黄、绿灯,指挥车辆和行人。
十字路口交通灯控制规则为:
初始状态为4 个方向的红灯全亮,时间1s。
东西方向绿灯亮,南北方向红灯亮。东西方向通车,时间25s。
东西方向黄灯亮,南北方向红灯亮,时间5s。
东西方向红灯亮,南北方向绿灯亮。南北方向通车,时间20s。
东西方向红灯亮,南,北方向黄灯亮,时间5s。
返回2),继续运行。
要求:
25s、20s、5s为减1计数器。
增加一个车道的车辆对交通灯的控制.
系统总体设计
系统逻辑框图
给出逻辑框图(系统包含的各子模块及连接框图)
给出各子模块的信号名字及功能
5s定时器
cp 时钟信号输入
reset 清零
ey 5秒定时计数器的工作使能信号
tm5 5秒定时计数器的计时时间到信号,计时结束时,tm5=‘1’
20s定时器
cp 时钟信号输入
reset 清零
er 20秒定时计数器的工作使能信号
tm20 20秒定时计数器的计时时间到信号,计时结束时,tm20=‘1’
25s定时器
cp 时钟信号输入
reset 清零
eg 25秒定时计数器的工作使能信号
tm25 25秒定时计数器的计时时间到信号,计时结束时,tm25=‘1
子模块1设计、实现及仿真
子模块元件图及输入输出描述(包括每个信号名字)
cp 时钟信号输入
reset 清零
ey 5秒定时计数器的工作使能信号
tm5 5秒定时计数器的计时时间到信号,计时结束时,tm5=‘1’
子模块功能描述
在计数器计数过程中,tm5为0,当计时时间到即计时结束时,tm5为1
VHDL源代码
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
ENTITY time_5 IS
PORT
(
reset,ey,cp:IN STD_LOGIC;
tim5:OUT STD_LOGIC
);
END time_5;
ARCHITECTURE arc1 OF time_5 IS
BEGIN
PROCESS(reset,cp)
VARIABLE cnt:INTEGER RANGE 5 DOWNTO 0;
BEGIN
IF reset=1 THEN
cnt:=0;
ELSIF cp event AND cp=1 THEN
IF ey=1 AND cnt5 THEN
cnt:=cnt+1;
ELSE
cnt:=1;
END IF;
END IF;
IF cnt=5 THEN
tim5=1;
ELSE
tim5=0;
END IF;
END PROCESS;
END arc1;
仿真及分析说明
给出子模块仿真波形(可包含1张或多张仿真图,呈现电路完善的仿真结果,图下要有编号和图名)
对实验结果进行分析,与理论结果是否一致
5秒计时结束后,tm5为1,实验结果与理论结果一致。
子模块2设计、实现及仿真
子模块元件图及输入输出描述(包括每个信号名字)
cp 时钟信号输入
reset 清零
er 20秒定时计数器的工作使能信号
tm20 20秒定时计数器的计时时间到信号,计时结束时,tm20=‘1’
子模块功能描述
在计数器计数过程中,tm20为0,当计时时间到即计时结束时,tm20为1
VHDL源代码
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
ENTITY time_20 IS
PORT
(
reset,er,cp:IN STD_LOGIC;
tim20:OUT STD_LOGIC
);
END
显示全部