四位全加器实验报告

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

武汉轻工大学

数学与计算机学院

《计算机组成原理》

实验报告

题目:4位二进制计数器实验

专业:软件工程

班级:130X班

学号:1305110XXX

姓名:XX

指导老师:郭峰林

2015年11月3日

【实验环境】

1. Win 7

2. QuartusII9.1计算机组成原理教学实验系统一台。

【实验目的】

1、熟悉VHDL 语言的编写。

2、验证计数器的计数功能。

【实验要求】

本实验要求设计一个4位二进制计数器。要求在时钟脉冲的作用下,完成计数功能,能在输出端看到0-9,A-F 的数据显示。(其次要求下载到实验版实现显示)

【实验原理】

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

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

计数器的种类⎪⎪⎪⎪⎪⎪⎩

⎪⎪⎪⎪⎪⎪⎨⎧⎪⎩⎪⎨⎧⎪⎩⎪⎨⎧⎩⎨⎧进制计数器十进制计数器二进制计数器进制可逆计数器减法计数器

加法计数器功能异步计数器同步计数器结构N 、、、321 下面对同步二进制加法计数器做一些介绍。

同步计数器中,所有触发器的CP 端是相连的,CP 的每一个触发沿都会使所有的触发器状态更新。因此不能使用T ′触发器。应控制触发器的输入端,即将触发器接成T 触发器。只有当低位向高位进位时(即低位全1时再加1),令高位触发器的T=1,触发器翻转,计数加1。

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

①输出方程

n n n n Q Q Q Q CQ 0123=

②驱动方程

⎪⎪⎩⎪⎪⎨⎧

========n n n n n n Q Q Q K J Q Q K J Q K J K J 012330

122011001

③状态方程

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

说明:为了方便在QuartusII9.1 sp2中完成编译和功能仿真,我们选择芯片Cyclone II,EP2C70F89C6,而在DE2-115开发板中进行下载时,则需要选择与开发板相匹配的芯片Cyclone IVE 中的EP4CE115F29C7。(芯片选择见下文详述,注意每次变换芯片后都需要重新编译)

【实验步骤】

1.1.1 创建项目工程

1、首先新建一个文件夹。利用资源管理器,新建一个文件夹,如:d : \test1 。作为本项目所有文件存放位置。

2、创建一个工程

(1)

、双击桌面上的图标,打开Quartus II 软件。

(2)、再开始建立新项目工程。点击:【File 】菜单,选择下拉列表中的【New Project Wizard...】命令,打开建立新项目工程的向导对话框。点击next 。

完成以上命名工作后,点击Next ,进入下一步。

图1.1.3 添加其他工程的文件到本项目工程中

(5)选择设计文件所需要的可编程芯片的型号,实验中我们所用的实验平台是DE2-115开发板。由于DE2-115实验板中的FPGA 芯片较新,QuartusII9.1 sp2软件还没有为其提供相应的仿真功能,因此,我们要选择较早的芯片Cyclone II,EP2C70F89C6

图1.1.4 选择目标芯片的型号

点击Next,进入下一步。如下图对话框:

点击Finish,完成新建项目工程的任务。

1.1.2 创建源程序文件

(1)新建一个VHDL项目文件。

打开QuartusII,选择菜单“File” “New”,在New窗中的“ Design Files”中选择编译文件的语言类型,选“VHDL File”(如图所示)。

图1.1.6 选择编辑文件的语言类型

(2)然后在VHDL文本编译窗中键入VHDL程序。VHDL语言的程序代码如下图所示:

图1.1.7 VHDL语言的程序代码

其中,CLK是时钟信号,CQ是4位数据输出端。每当检测到CLK出现一个上升沿时,计数器就自加1并输出结果。

(3)键入程序后,点击保存,选择默认保存名。

在对工程进行编译处理前,必须做好必要的设置:

(1)选择目标芯片。目标芯片的选择也可以这样来实现:选择Assignments菜单中的Settings项,在弹出的对话框中选择Category项下的Device(也可以直接选择Assignments菜单中的Device项),然后选择目标芯片(方法同创建工程中的第5步)。

(2)选择目标器件闲置引脚的状态。点击Assignments-----Device…,在Device & Pin Options窗口中,选择Unused Pin项,设置目标器件闲置引脚的状态为输入状态(呈高阻态As input tri-stated)。

图1.2.1 设置目标器件闲置引脚的状态为呈高阻态

相关文档
最新文档