VHDLFPGA计数器.doc
文本预览下载声明
《VHDL与数字系统设计》课程设计报告
( 2014 -- 2015 年度第 1 学期)
名 称: VHDL与数字系统设计
题 目: 八位可逆计数器电路设计
院 系: 电气与电子工程学院
班 级: 电子1301
学 号: 1131230106
学生姓名: 韩辉
指导教师: 高雪莲
设计周数: 2周
成 绩:
日期: 2015年 1 月 14 日
一、课程设计CLR UPDOWN CLK Q0~Q7 1 X X 0 1 ↑ 加1 0 0 ↑ 减1
可逆计数器的计数方向,由特殊的控制端UPDOWN控制。
当UPDOWN=1时,计数器进行加1操作;
当UPDOWN=0时,计数器进行减1操作。
2.八位可逆计数器电路设计的源程序:
LIBRARY IEEE; ——库
USE IEEE.STD_LOGIC_1164.ALL;
USE IEEE.STD_LOGIC_UNSIGNED.ALL; ——程序包
ENTITY count8 IS——实体说明
PORT(clr, clk,updown: IN STD_LOGIC; ——clr,clk,updown为标准逻辑输入
q0,q1,q2,q3,q4,q5,q6,q7: OUT STD_LOGIC); ——q0—q7为标准逻辑输出
END count8; ——结束实体
ARCHITECTURE exam OF count8 IS——结构体说明
SIGNAL count_8 : STD_LOGIC_VECTOR (7 DOWNTO 0);
BEGIN
q0 = count_8(0);
q1 = count_8(1);
q2 = count_8(2);
q3 = count_8(3);
q4 = count_8(4);
q5 = count_8(5);
q6 = count_8(6);
q7 = count_8(7); ——q0—q7赋值
PROCESS(clk,clr,updown) ——进程
BEGIN
IF (clr=1) THEN
count_8 = ——当clr=‘1’时,count_8置零
ELSIF (clkEVENT AND clk=1) THEN ——计数脉冲上升沿有效
IF (updown=1) THEN
count_8=count_8+1;
ELSE
count_8=count_8-1; ——updown为1时加法计数,
END IF; 为0时减法计数
END IF;
END PROCESS; ——结束进程
END exam; ——结束exam
三、课程设计的结论
1. 八位可逆计数器的仿真波形图及其分析如下:
由图1分析可得如下结论:.波形出现延迟现象, 延迟长度如图1两红线间距所示,延迟时间为6.72ns。
图3 八位可逆计数器的仿真波形图三
由图2、图3分析可得如下结论:图中的红框区域为
显示全部