数字电路二位数值比较器
更新时间:2023-11-10 04:08:01 阅读量: 教育文库 文档下载
数字电子技术基础
课程设计报告书
题目:2位数值比较器 姓名: 班级: 指导教师:
设计时间:2011年3月— 7月
民族大学数学与计算机学院
一、背景和编写目的
随着时代的进步,社会的发展,科学技术的进步,我们会在很多地方用到比较器,比如,在体育竞技场地对一些选手的成绩进行比较,选出他们中的成绩优异者;我们为了比较一下不同物品的参数,我们可以利用一些科学技术来实现这些功能,使得我们的工作效率得以提高,减少了我们认为的工作量。
本次设计的目的就是通过实践掌握数字电路的分析方法和设计方法,了解了
数学与计算机学院
2位数值比较器报告书 09级计1: 第 页 共13 页
解EDA技术和maxplus2软件并掌握VHDL硬件描述语言的设计方法和思想。以数
字电子技术基础为指导,通过学习的VHDL语言结合电子电路的设计知识理论联系实际,掌握所学的课程知识和基本单元电路的综合设计应用。通过对比较器的设计,巩固和综合运用所学知识,提高分析、解决计算机技术实际问题的独立工作能力。
比较器有2位数比较器,4位数比较器,8位数比较器等多种。本课程设计就是两位数比较器,可以实现2位二进制数值的比较。 二、EDA和VHDL的介绍 EDA技术
EDA技术的概念
EDA是电子设计自动化(E1echonics Des5p AM?toM60n)的缩写。由于它是一门刚刚发展起来的新技术,涉及面广,内容丰富,理解各异。从EDA技术的几个主要方面的内容来看,可以理解为:EDA技术是以大规模可编程逻辑器件为设计载体,以硬件描述语言为系统逻辑描述的主要表达方式,以计算机、大规模可编程逻辑器件的开发软件及实验开发系统为设计工具,通过有关的开发软件,自动完成用软件的方式设计电子系统到硬件系统的一门新技术。
EDA技术的特点
采用可编程器件,通过设计芯片来实现系统功能。采用硬件描述语言作为设计输入和库(LibraLy)的引入,由设计者定义器件的内部逻辑和管脚,将原来由电路板设计完成的大部分工作故在芯片的设计中进行。由于管脚定义的灵活性,大大减轻了电路图设计和电路板设计的工作量和难度,有效增强了设计的灵活性,提高了工作效率。并且可减少芯片的数量,缩小系统体积,降低能源消耗,提高了系统的性能和可靠性。能全方位地利用计算机自动设计、仿真和调试。 VHDL语言
VHDL语言的简介
VHDL语言是一种用于电路设计的高级的硬件描述语言。其主要是应用在数字电路的设计中。在一些实力较为雄厚的单位,它常被用来设计ASIC。
VHDL主要用于描述数字系统的结构,行为,功能和接口。除了含有许多具有硬件特征的语句外,VHDL的语言形式、描述风格以及语法是十分类似于一般的计算机高级语言。VHDL的程序结构特点是将一项工程设计分成外部和内部,既涉及实体的内部功能和算法完成部分。在对一个设计实体定义了外部界面后,一旦其内部开发完成后,其他的设计就可以直接调用这个实体。这种将设计实体分成内外部分的概念是VHDL系统设计的基本点.与其他硬件描述语言相比,VHDL的特点:
1、功能强大、设计灵活:
它具有多层次的设计描述功能,层层细化,最后可直接生成电路级描述。VHDL支持同步电路、异步电路和随机电路的设计。VHDL支持自底向上的设计,又支持自顶向下的设计。 2、支持广泛、易于修改:
大多数EDA工具几乎都支持VHDL,故在硬件电路设计过程中,主要的设计文件是用VHDL编写的源代码,因为VHDL易读和结构化,所以易于修改设
数学与计算机学院
2位数值比较器报告书 09级计1: 第 页 共13 页
计。
3、强大的系统硬件描述能力
VHDL具有多层次的设计描述功能,既可以描述系统级电路,又可以描述门级电路。而描述既可以采用行为描述、寄存器传输描述或结构描述,也可以采用三者混合的混合级描述。另外,VHDL支持惯性延迟和传输延迟,还可以准确地建立硬件电路模型。VHDL还支持预定义的和自定义的数据类型。
此外还有独立于器件的设计、很强的移植能力、易于共享和复用等特点。
三、系统组成
数据输入端|:A1,B1,A0,B0 输出端口:1,2,3
四、硬件设计
a、 输入2位二进制数值分别用A1、B1、A0、B0表示
b、 输出用1、2、3表示,其中1、2、3分别代表结果是A>B、A=B、A
数学与计算机学院
2位数值比较器报告书 09级计1: 第 页 共13 页
电路说明:
A、B是两B1个二位二进制数A1A0和B1B0,进行比较时首先比较高位即A1和B0,如果A1>B1,则不管其他位数码为何值,一定有A>B。反之,A1 Y(A>B)=A1*B1′+(A1⊙B1)A0*B0′*I(A>B); Y(A 其中I(A>B)、I(A 输入 A1 1 0 0 0 0 0 输出 B0 1 1 0 0 1 0 1 0 0 1 0 2 0 0 1 0 0 1 3 0 1 0 1 0 0 B1 0 1 0 0 0 0 A0 任意 任意 0 0 1 1 数学与计算机学院 2位数值比较器报告书 09级计1: 第 页 共13 页 1 1 1 1 1 1 1 1 0 0 1 1 0 1 0 1 0 0 1 0 1 0 0 1 0 1 0 0 备注:输出中的1、2、3分别代表A>B、A=B、A 系统工作软件流程 1) 打开Max+plusII,进入编辑环境,如下图: 2)新建文本文件,选择Text Editor file:如下图: 数学与计算机学院 2位数值比较器报告书 09级计1: 第 页 共13 页 3)点击ok进入文本编辑系统,输入源程序,如下图所示: 4)建立工程,然后看编译是否有错误,直到通过编译为止 : 数学与计算机学院 2位数值比较器报告书 09级计1: 第 页 共13 页 5)仿真建立波形文件: 程序代码: LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_ARITH.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; entity Comp is port ( 数学与计算机学院 2位数值比较器报告书 09级计1: 第 页 共13 页 A1 : in std_logic; B1 : in std_logic; A0 : in std_logic; B0 : in std_logic; AsmallerB : out std_logic; AbiggerB : out std_logic; AequalB : out std_logic ); end Comp; architecture RTL of Comp is signal S_TMP : std_logic_vector(3 downto 0); begin S_TMP <= A1 & B1 & A0 & B0; process (S_TMP) begin case (S_TMP) is when \ when \ when \ when \ when \ when \ when \ when \ when \ when \ 数学与计算机学院 2位数值比较器报告书 09级计1: 第 页 共13 页 when \ when \ when \ when \ when \ when \ when others => AsmallerB <= '0';AbiggerB <= '0';AequalB <= '0'; end case; end process; end RTL; 运行仿真: 数学与计算机学院 2位数值比较器报告书 09级计1: 第 页 共13 页 仿真结果: 六、系统调试 1),软件打不开,解决办法把license.dat的文件拷贝到安装目录下面, 2)逻辑图显示node missing source 错误, 解决办法是把输入端口的名字改了, 3)仿真结果总是出不来,解决的办法是单击Max+plus下拉菜单下面的Simulator,而不是直接点击 运行。 七、心得体会 虽然刘老师曾经多次讲过如何使用该软件,但是在这个课程设计开始的时候,我们依旧很迷茫,不知道该怎么去做这个课程设计。最后反复看了课本之后,才开始着手做2位数值比较器这个课题,在课程设计过程中,我们查阅了大量的资料,多次询问了同学许多问题,才把这个课题了解清楚。 开始时,对2位数值比较器的理解比较深入,可是在设计时总是忘记少连或者多连一些线路,所以开始的设计都是以失败而告终,这样的情况浪费了我们很 数学与计算机学院 2位数值比较器报告书 09级计1: 第 页 共13 页 多时间,通过这次做课程设计,我们了解到做课程设计也是对课本知识的巩固和 加强,由于课本的知识很多,平时课间的学习并不能很好的理解和运用各个元件的功能,所以在这次课程设计中,我们了解了很多元件的功能,并且对于其在电路中的使用有了更多的认识,平时看课本时,有时问题老是弄不懂,做完课程设计,那些问题就迎刃而解了。同时还可以记住更多的东西,比如一些芯片的功能,通过动手实践让我们对各个元件映像深刻,认识来源于实践,实践是认识的动力和最终目的,实践是检验真理的唯一标准,所以这次的课程设计对我们的作用是非常大的。 虽然此课程设计对我们组很有压力,可是当我们看到我们的成果时,我们感到了高兴,同时明白了有些事情即使再难,在枯燥,只要我们尽自己最大的努力,最后也能完成的很好。我们应该克服自己懒惰的心理,只要敢于动手去做,其实所有事情并不是想象中的那么难。通过这次课程设计,加强了我们动手、思考和解决问题的能力,明白了做事要注意细节,最后对MAX+plus这个软件产生了兴趣。 八、参考文献 [1]数字电子技术基础(第五版),阎石主编,高等教育出版社 [2]数字系统设计及VHDL实战,徐向明主编,机械工业出版社 [3]黄仁欣.EDA技术实用教程.北京:清华大学出版社,2006 九、附录 程序原理图: 数学与计算机学院 2位数值比较器报告书 09级计1: 第 页 共13 页 程序代码以及部分注释: LIBRARY IEEE; --使IEEE库可见 USE IEEE.STD_LOGIC_1164.ALL; --调用IEEE库中的程序包 USE IEEE.STD_LOGIC_ARITH.ALL; -- USE IEEE.STD_LOGIC_UNSIGNED.ALL; entity Comp is --实体说明 port ( A1 : in std_logic; --二进制输入端口 B1 : in std_logic; A0 : in std_logic; B0 : in std_logic; AsmallerB : out std_logic; --结果输入端口 AbiggerB : out std_logic; AequalB : out std_logic ); end Comp; architecture RTL of Comp is --结构体描述 signal S_TMP : std_logic_vector(3 downto 0); begin S_TMP <= A1 & B1 & A0 & B0; --输入4个二进制数值 数学与计算机学院 2位数值比较器报告书 09级计1: 第 页 共13 页 process (S_TMP) begin case (S_TMP) is --case语句 when \ when \ when \ when \ when \ when \ when \ when \ when \ when \ when \ when \ when \ when \ when \ when \ when others => AsmallerB <= '0';AbiggerB <= '0';AequalB <= '0'; end case; end process; end RTL;
正在阅读:
数字电路二位数值比较器11-10
家长会主持人串词02-12
行进间转法教案06-20
农村初中物理实验教学的困难与思考12-25
自动控制原理试题库05-14
数字通信原理复习02-01
Excel 2003表格处理08-05
《热能与动力机械测试技术》实验指导书04-08
雅思考官满分范文12篇10-19
数字信号处理期末试卷(含答案)10-31
- exercise2
- 铅锌矿详查地质设计 - 图文
- 厨余垃圾、餐厨垃圾堆肥系统设计方案
- 陈明珠开题报告
- 化工原理精选例题
- 政府形象宣传册营销案例
- 小学一至三年级语文阅读专项练习题
- 2014.民诉 期末考试 复习题
- 巅峰智业 - 做好顶层设计对建设城市的重要意义
- (三起)冀教版三年级英语上册Unit4 Lesson24练习题及答案
- 2017年实心轮胎现状及发展趋势分析(目录)
- 基于GIS的农用地定级技术研究定稿
- 2017-2022年中国医疗保健市场调查与市场前景预测报告(目录) - 图文
- 作业
- OFDM技术仿真(MATLAB代码) - 图文
- Android工程师笔试题及答案
- 生命密码联合密码
- 空间地上权若干法律问题探究
- 江苏学业水平测试《机械基础》模拟试题
- 选课走班实施方案
- 比较器
- 数值
- 电路
- 数字
- 数电重修复习及部分答案 - 图文
- (2013.05.25)第二次作业(习题1-10)
- 实施性施工组织设计 - 图文
- 锅炉汽包水位测量系统新技术
- 烽火10GEPON OLT 数据配置规范
- 罗氏E601简易操作卡
- 环境生物技术专业知识一览 - 图文
- 实习生交流会新闻稿
- 新闻学考研必备 - 《新闻学导论》笔记(李良荣版)
- 《马原》每章习题
- 镇江市第四届“我的教育故事”评选获奖名单(京口) - 图文
- 第二次土地调查农村部分数据局限性探讨
- 山大考研生物化学练习册
- 小学生八大行为习惯养成实施方案
- 第二章 现金流量折现法
- 学生评语集锦
- 地理教学论读书笔记
- 发展服务外包 - 实现从广东制造向广东服务转变的重要途径(77分)
- 减温减压器系统运行规程
- 财务共享模式下的会计档案管理工作探究