4位二进制计数器实验 下载本文

内容发布更新时间 : 2024/4/25 15:42:31星期一 下面是文章的全部内容请认真阅读。

计算机组成原理

实验报告

院 系: 专 业: 班 级: 学 号: 姓 名: 指导老师:

2014年11月20日

实验一 4位二进制计数器实验

一、实验环境

1. Windows 2000 或 Windows XP

2. QuartusII9.1 sp2、DE2-115计算机组成原理教学实验系统一台,排线若干。

二、实验目的

1、熟悉VHDL语言的编写。 2、验证计数器的计数功能。

三、实验要求

本实验要求设计一个4位二进制计数器。要求在时钟脉冲的作用下,完成计

数功能,能在输出端看到0-9,A-F的数据显示。(其次要求下载到实验版实现显示)

四、实验原理

计数器是一种用来实现计数功能的时序部件,计数器在数字系统中主要是对

脉冲的个数进行计数,以实现测量、计数和控制的功能,同时兼有分频功能。计数器由基本的计数单元和一些控制门所组成,计数单元则由一系列具有存储信息功能的各类触发器构成,这些触发器有RS触发器、T触发器、D触发器及JK触发器等。计数器在数字系统中应用广泛,如在电子计算机的控制器中对指令地址进行计数,以便顺序取出下一条指令,在运算器中作乘法、除法运算时记下加法、减法次数,又如在数字仪器中对脉冲的计数等等。

计数器按计数进制不同,可分为二进制计数器、十进制计数器、其他进制计数器和可变进制计数器,若按计数单元中各触发器所接收计数脉冲和翻转顺序或计数功能来划分,则有异步计数器和同步计数器两大类,以及加法计数器、减法计数器、加/减计数器等,如按预置和清除方式来分,则有并行预置、直接预置、异步清除和同步清除等差别,按权码来分,则有“8421”码,“5421”码、余“3”码等计数器,按集成度来分,有单、双位计数器等等,其最基本的分类如下:

???同步计数器?1、结构???异步计数器?计数器的种类??加法计数器

???2、功能?减法计数器??可逆计数器???二进制计数器??3、进制?十进制计数器???N进制计数器??? 下面对同步二进制加法计数器做一些介绍。

同步计数器中,所有触发器的CP端是相连的,CP的每一个触发沿都会使所有的触发器状态更新。因此不能使用T′触发器。应控制触发器的输入端,即将

1

触发器接成T触发器。只有当低位向高位进位时(即低位全1时再加1),令高位触发器的T=1,触发器翻转,计数加1。

例如由JK触发器组成的4位同步二进制加法计数器,令其用下降沿触发。下面分析它的工作原理。 ①输出方程

nnnnCQ?Q3Q2Q1Q0

②驱动方程

J0?K0?1??J?K?Qn?110 ?nn?J2?K2?Q1Q0nnn??J3?K3?Q2Q1Q0 ③状态方程

本实验中要求用VHDL语言设计同步4位二进制计数器,令其上升沿触发。

五、实验步骤

(一)顶层VHDL文件设计

1、创建工程和编辑设计文件 (1)创建一个工程 (2)输入源程序。

a、新建一个VHDL项目文件。 打开QuartusII,选择菜单“File”?“New”,在New窗中的“ Design Files”中选择编译文件的语言类型,选“VHDL File”。

b、然后在VHDL文本编译窗中键入VHDL程序。VHDL语言的程序代码如下: LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

USE IEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITY test1 IS

PORT ( CLK:IN STD_LOGIC; CQ:OUT STD_LOGIC_VECTOR(3 DOWNTO 0)); END test1;

2