设计简易计算器的PLD实现 - 图文

更新时间:2023-12-24 02:22:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

题目: 毕业设计(论文)

简易计算器的PLD实现

本科毕业设计(论文)

诚 信 承 诺 书

本人郑重声明:所呈交的毕业设计(论文) 《简易计算机的PLD实现》 是本人在导师的指导下独立进行研究所取得的成果,除了在毕业设计(论文)中特别加以标注引用、表示致谢的内容外,本毕业设计(论文)不包含任何其他个人、集体已发表或撰写的成果作品。

班 级: 学 号: 作者姓名: 年 月 日

xx大学xx学院

机 电 系 电子信息工程 专业

毕 业 设 计论 文 任 务 书 一、题目及专题:

1、题目 简易计算器的PLD实现 2、专题

二、课题来源及选题依据

随着基于PLD的EDA技术的发展和应用领域的扩大与深入,EDA技术在电子信息、通信、自动控制及计算机应用等领域的重要性日益突出。随着技术市场和人才市场对EDA的需求不断提高,本毕业设计课题就围绕此中心展开工作。

三、本设计(论文或其他)应达到的要求:

1.两个无符号的8位二进制的相加; 2.两个无符号的8位二进制的相减(被减数>=减数); 3.两个无符号的4位二进制的相乘; 四、接受任务学生:

班 姓名 五、开始及完成日期:

自 年 月 日 至 年 月 日

六、设计(论文)指导(或顾问):

指导教师 签名

签名

签名

教研室主任

签名

系主任 签名

xxxx年xx月xx日

〔学科组组长研究所所长〕

摘 要

电子设计自动化(EDA)的实现是与CPLD/FPGA技术的迅速发展息息相关的。CPLD/FPGA是80年代中后期出现的,其特点是具有用户可编程的特性。利用PLD/FPGA,电子系统设计工程师可以在实验室中设计出专用IC,实现系统的集成,并且具有静态可重复编程或在线动态重构特性,使硬件的功能可像软件一样通过编程来修改,极大地提高了电子系统的灵活性和通用能力。

近年来,电子技术飞速发展,数字电路中PLD(可编程逻辑器件)是目前应用最灵活的器件,而MAX + PLUSⅡ(复阵列矩阵及可编程逻辑用户系统)是专为开发74等系列器件的软件中最成熟,功能最全面,适用范围非常广泛的软件之一。本次设计主要采用74系列器件,在MAX + PLUSⅡ中完成电路的设计和完善,并在此软件中进行仿真,设计者可以直观地测试其逻辑功能及性能指标。

关键词:自动化;可编程逻辑器件;复阵列矩阵及可编程逻辑用户系统

Abstract

Electronic design automation(EDA) realization and the fast development of CPLD/ FPGA technique are vitally related. CPLD/FPGA arises from the middle and later stage of 80 age, whose feature is having user programmable character. Using CPLD/FPGA, electronic system design engineers can design dedicated IC in the laboratory so that realize systematic integration, and it has static repeatedly programmable and online dynamic rebuilded character, and makes the function of hardware can amend by programming like software, which improves the flexibility and universal ability of electronic system vastly.

In recent years, electronic technique has developed fast, in digital circuit PLD(Programmable Logic Device) application is the most flexible device now, but MAX + PLUSⅡ(plural array matrix and programmable logic user system)is one of the maturest, the most overall functional software whose suitable range is very widespread. This design mainly uses 74 series of device to complete the design and improvement of circuit in MAX + PLUSⅡ,and simulates in this software, the designer can test its logic function and performance index ocularly.

Key words: automation; Programmable Logic Device; plural array matrix and programmable logic

user system

目 录

1 绪论 .................................................. 1

1.2 PLD的发展史 ...................................................................................................... 1 1.3 PLD的分类 ......................................................................................................... 2 1.4 各类PLD的结构及特点 ....................................................................................... 2

1.4.1 PAL器件 .......................................................................................................... 3 1.4.2GAL器件 .......................................................................................................... 3 1.4.3 FPGA ............................................................................................................... 3

1.5 PLD设计步骤 ...................................................................................................... 3

1.5.1 设计构思 ......................................................................................................... 4 1.5.2 选择器件型号 ................................................................................................... 4 1.5.3 列写源文件 ...................................................................................................... 4 1.5.4 对器件编程 ...................................................................................................... 4

1.6 MAX-PLUSⅡ软件相关介绍 ................................................................................. 4 1.7本文的目的 .......................................................................................................... 5

2 分析与设计 ............................................. 6

2.1课题内容 ............................................................................................................. 6 2.2 总体设计 ............................................................................................................. 6

2.2.1 总体设计思路 ................................................................................................... 6

2.2.2 总体设计框图 .................................................................................................... 6

2.3单元电路设计 ...................................................................................................... 7

2.3.1输入部分 .......................................................................................................... 7 2.3.2 加/减法器部分 ................................................................................................. 11 2.3.3 乘法器部分 ..................................................................................................... 17 2.3.4 显示输出部分 .................................................................................................. 18

2.4整体电路的设计 ................................................................................................. 18 2.5 VHDL语言 ........................................................................................................ 21

3 结论与展望 ............................................ 23

3.1结论 .................................................................................................................. 23 3.2不足之处及对未来的展望 ................................................................................... 23

致 谢 ................................................ 24 参考文献 ................................................ 25 附 录 ................................................ 26

1 绪论

当今世界,科学技术飞速发展,电子产品日新月异,新的器件不断涌现。仅就逻辑器件这一小小的“家族”而言,短短儿十年的时间就己经发生了翻天覆地的变化,从每片只有儿十个组件的小规模逻辑集成电路发展到在一块不到几个mm2的芯片上就拥有十几万、几十万甚至更多组件的大规模和超大规模集成电路,而且器件的性能始终在飞速提高,而价格却在急剧下降。与此同时,大批新结构、新工艺、新功能的新型产品也在不断投放市场。可编程逻辑器件(PLD)就是逻辑器件这一“家族”中的一个别具特色的新成员。

1.1 PLD概论

在微处理器及内存等方面,已有了超大规模集成电路(VLSI),在逻辑器件方面出现了专用集成电路ASIC芯片,作为ASIC一个分支的可编程逻辑器(PLD)是近几年发展起来的一种实用硬件技术。它属于集成电路的一种,具有集成度高、成本低、设计灵活和保密性好等特点,现已广泛应用于计算机、通信、信号处理、工业控制等方面。

在我国随着改革开放的步伐加快和经济建设的迅速发展,对PLD器件的需求已越来越大。PLD几乎能满足数字系统和自动控制系统等各方面的要求,小至编码器,译码器,计数器以及寄存器等各种组合电路和时序电路;大至微处理器系统、存储控制、图形图像处理系统、总线接口、通信、外围设备、工业控制以及军用系统等,PLD都显示出良好的适应性。我国ASIC的设计和生产能力都比较薄弱,而绝大多数电子产品的密度和速度不是太高,批量也比较小。因此,广泛使用PLD器件是非常适合提高我国电子产品性能和竞争能力的主要技术措施之一,应当大力普及推广。

1.2 PLD的发展史

历史上,可编程逻辑器件经历了从PROM、P LA、P AL、G AL、E PLD、C PLD和FPGA等的发展过程,在结构、工艺、集成度、功能、速度和灵活性方面都有很大的改进和提高。 可编程逻辑器件大致的演变过程如下:

1.七十年代,熔丝编程的PROM和PAL器件是最早的可编程逻辑器件。 2.七十年代末,AMD公司开始推出PAL器件。

3.八十年代初,Lattice公司发明可电擦写的、比PAL使用更灵活的GAL器件。 4.八十年代中期,Xilinx公司提出现场可编程概念,同时生产了世界上第一片FPGA器件。同一时期,Altera公司推出EPLD器件,较GAL器件有更多的集成度,可以用紫外线或电擦除。

5.八十年代末,Lattice公司又提出在系统可编程技术,并且推出了一系列具备在系统可编程能力的CPLD器件。

6.进入九十年代后,可编程逻辑集成电路技术进入飞速发展时期。

1.3 PLD的分类

可编程逻辑器件种类较多,工艺上采用CMOS, TTL , ECL技术,并不断向更高速、更高密度、更强功能、更灵活的方向发展。可编程逻辑器件PLD主要有以下几种: 可编程只读存储器PROM (Programmable Read Only Memory) ; 可编程逻辑数组PLA (Programmable Logic Array); 可编程数组逻辑PAL (Programmable Array Logic); 通用数组逻辑 GAL (Generic Array Logic) ;

现场可编程门阵列FPGA(Field Programmable Gate Array);

其它可编程逻辑器件,如可编程逻辑时序机PLS、可编程多路转接器PMUX、可编程二极管矩阵PDM等。

它们之间的关系可见图1.1:

图1.1 几种PLD的相互关系

集成度是集成电路的一项重要指标,如果从集成度上分类,可分为低密度可编程逻辑器件(LDPLD)和高密度可编程逻辑器件(LDPLD)。历史上,GAL22VIO是简单PLD和复杂PLD的分水岭,一般也按照GAL22VIO芯片的容量区分为LDPLD和HDPLD. CAL22VIO的集成度根据制造商的不同,大致在500门/750门之Ifb1。如果按照这个标准,PROM, PLA, PAL, GAL器件属于低密度可编程逻辑器件,而EPLD, CPLD和FPGA属于高密度可编程逻辑器件,

1.4 各类PLD的结构及特点

1.4.1 PAL器件

PAL是一种现场可编程的阵列逻辑器件,其内部由“与”阵列和“或”阵列两部分组成,“与”阵列的输出是“或”阵列的输入信号,“与”阵列可编程而“或”阵列固定。

PAL器件在逻辑设计中具有以下优点:

可编程取代传统的逻辑器件,减少器件数目至少四倍,从而节省空间;加快和简化了原始样机设计和电路布线过程,采用TTL,ECL,CMOS三种不同工艺制造,满足不同要求,利于提高系统速度,具有可编程三态门;可由PROM编程器编程,特殊措施防止非法复制,即加密PAL器件,将保密熔丝烧断后,不能读出内部阵列码点。

可是PAL器件的输出方式是由器件类别决定的,不可以编程组态,并且只有CMOS工艺的PAL器件才可采用紫外线或电擦除。

1.4.2GAL器件

GAL器件是在PAL基础上发展起来的,其结构仍是可编程的“与”阵列驱动固定的“或”阵列,只是所有GAL器件的输出端都有输出逻辑宏单元OLMC (Output Logic Macro Cell)的结构,正是这个结构决定了GAL器件可重组态的功能。

GAL器件继承了PAL可编程的特点,同时还具有自己独特的优点:GAL器件采用高速电可擦除CMOS工艺制造,可最大程度地提供可测试功能以及生产工艺质量,它的随时可擦除性最适合样机的研制和错误的修改;GAL器件的CMOS低功耗使系统的温度低、高性能持久,并使得电路设计可以有较高的功能集成度,从而芯片数、印制板尺寸大大减小,GAL器件速度不低于除ECL电路之外的任何工艺生产的器件速度,GAL器件的输出逻辑宏单元OLMC利于用户按需要对输出组态以实现所要求的功能和结构,GAL器件具有保密性。 其缺点是:集成度不高(含200-300个门),1/0管脚数少。 1.4.3 FPGA

FPGA是门阵列技术和可编程逻辑器件技术发展的结果,目前有Xilinx, Altera, Actel、Sign.tics四大公司的产品,他们分别采用不同的体系结构、工艺技术和编程方法,其中Xilinx公司的可编程逻辑单元阵列LCA (Logic Cell Array)是目前FPGA市场上的主流产品。

FPGA的结构类似于通常的门阵列结构,其中心部分是由可编程的逻辑单元块CLB(Configurable Logic Blocks)组成的矩阵区,芯片四周为可编程输入输出块IOB (Input / Out-put Blocks),在CLB行列之间以及CLB和LOB之间为可编程的互连资源ICR (Interconnect Resource)。

1.5 PLD设计步骤

PLD就其设计方法而言,借助于高级设计语言,比中小规模的逻辑电路设计要简单灵活得多。设计的产品结构紧凑、体积小、可靠性高,所以,PLD是研制新产品和改造旧设

备的最佳选择器件。

1.5.1 设计构思

将所要设计的逻辑问题变换成设计文木。逻辑描述可采用真值表。逻辑方程以及状态图等形式。只要用其中的一种方式表示就可以了,不必全部列出,用哪种方式简单就用哪种。所得到的逻辑函数不必化简,留给计算机去完成。这一步的关键就是要求正确地表示出逻辑函数的输出与输入的逻辑关系。

1.5.2 选择器件型号

根据设计文本的要求选择合适的器件型号,主要注意器件输出端和输入端的个数以及输出端的性质(组合输出还是寄存器输出以及输出极性等)是否满足要求。

1.5.3 列写源文件

将设计文本按照所应用的设计语言的语句和格式写成源文件,上机进行化简,仿真与测试。在这里可以反复修改源文件,直到满意为止。必要时还可以更改器件型号。

1.5.4 对器件编程

将计算机生成的编程檔下载到编程器对器件编程。在这时所选择的器件,是你最乏设计器件,除了与源文件所要求的型号相同外,还要考虑到其它技术条件是否满足要求。比如转换速度,功率损耗,温度以及电气特性等。可以查阅器件手册,选择所要求的不同档次的器件。

以上设计步骤,并不是不可改变的。当设计水平提高后,可以融会贯通。在设计构思时可以直接用设计语言的语句和格式,写成源文件。将减少好多重复性工作。[1]

1.6 MAX-plusⅡ软件相关介绍

传统的数字电路实验设计一般采用从局部到整体 的方式,由一些功能单一的器件加上一定的外围电路构成模块,再由这些模块进一步形成各种功能电路。基本器件是各种标准芯片,如74系列TTL) 1000/2000系列((COM S)芯片,实验时只能根据需要从中选择最合适的,再按照事先设计好的电路搭成,不但实验成本高,灵活性也很小,复杂的电路设计就更困难了。

近年来,电子技术飞速发展,新的电子器件也层出不穷,数字电路中PLD可编程序逻辑部件)是目前应用最灵活的器件,而MAX + PLUSⅡ复阵列矩阵及可编程逻辑用户系统)是专为开发这一系列器件的软件中最成熟,功能最全面,适用范围非常广泛的软件之一,是广大数字系统设计工程师得力的开发工具。

MAX + PLUSⅡ是美国Alte。公司研制的一种软件开发系统,它为用户开发、使用该公司生产的CPLD器件提供一个基于计算机的软件开发与操作平台。

MAX + PLUSⅡ由逻辑设计输入、设计处理、设计校验、下载编程四大部分组成。其主要功能与特点为:

(1)设计输入、处理、编译、校验、仿真、下载全部集成在统一的开发环境中,易学易用。

(2)设计环境与芯片或结构无关,简化了开发、设计过程。 (3)有丰富的模块化设计工具和器件库。 (4)支持硬件描述语言(AHDL, VHDL等)。 (5)提供Megaco系统级功能。

(6)具有内核开放功能,允许用户添加宏函数。 用软件MAX + PLUSⅡ设计电路的一般过程如图1.2:

图1.2 MAX + PLUSⅡ设计电路的流程图

次化设计是指对于一个系统设计任务,将任务层层分解,在各个层次上分别设计的方法。在MAX + PLUSⅡ中,可利用层次化方法来实现数字系统自顶向下的设计。一般在电路的具体实现时,先组建低层设计,再进行顶层设计。

使用MAX + PLUSⅡ进行设计一般包括设计输入、项目编译处理、分配I,B管脚、项目波形仿真、定时分析和程序下载六个阶段。[2]

1.7本文的目的

本论文主要讨论的是可编程逻辑器件的设计,在总结了前人的工作的基础之上,本文工作主要有如下几个方面:

第一,在查阅了大量有关的中英文文献并深刻理解有关内容的基础之上,对PLD设计有了一个全面深刻的认识,能够独立完成简单的数字系统设计,对于EDA技术有了相关的了解,以此为后继的工作打下了牢固的基础。

第二,完成课题《简易计算器的PLD实现》,完成逻辑电路的设计,详细介绍各部分单元电路的作用,介绍整体电路的设计。

第三,使用MAX-plusⅡ软件实现电路的仿真,实现相关的波形,从而可以验证设计的正确性与否。

2 分析与设计

2.1课题内容

简易计算器的PLD实现 设计要求:

1.两个无符号的8位二进制的相加。

2.两个无符号的8位二进制的相减(被减的〉=减的)。 3.两个无符号的4位二进制的相乘。

2.2 总体设计

2.2.1 总体设计思路

对于计算器的实现可以考虑分成如下三个主要部分: 1.输入存储部分

该部分用于存储数据以便于下一步的运行,考虑使用寄存器。 2.计算部分

设计的核心部分。 两个数字之间的运算无论是加、减、乘,目前在数字计算机中都是化做若干步加法运算进行的。因此,该部分主要依靠使用加法器实现各个部分的运算。至于具体如何实现,下一节会做具体介绍。

3.输出显示部分

输出显示部分用发光二级管来实现指示二进制的高低电平

2.2.2 总体设计框图

设计总框图如图2.1所示

图2.1 简易计算器设计总框图

2.3单元电路设计

2.3.1输入部分

输入部分的关键即是寄存器的选择。8位无符号的加、减法和4位无符号的乘、除法的实现需要寄存器。寄存器是一种用于暂存数据和运算结果的一种时序电路,它是计算机系统或其它数字系统中除计数器之外使用最多的时序逻辑电路,其分为并入/并出寄存器、串入/串出、串入并出、并入串出等多种寄存器,也有一些寄存器包含了上面的几种寄存器的功能。寄存器是由若干个正沿D触发器构成的一次能存储多位二进制代码的时序逻辑电路。它具有接收数据、存放数据或传送数据的功能。这里采用8位移位寄存器74LS198和4位移位寄存器74LS194。因为此部分只需要寄存功能,故其产生移位作用的引脚不接或者直接接地即可。这样74LS198和74LS194就只有寄存的功能了。因为74LS198和74LS194具有保持功能,当输入数据时,同时会给其脉冲,这样数据就进入了芯片。当输入结束时,脉冲也同时消失,这样数据就保持在了芯片中,形成了寄存作用。

图2.2 74194引脚图 图2.3 74198引脚图

74LS194: 74LS194引脚图如图2.2,它是具有左移、右移、清零、数据并入、并出、串入、串出等多种功能的4位双向移位寄存器,A、B、C、D为并行输入端,QA、QB、QC、QD为并行输出端,SLSI为左移串行输入端,SRSI为右移串行输入端,S1、S0为操作模式控制端,CLRN为直接无条件清零端,CLK为时钟脉冲输入端,S1、S0和CLRN端的控制作用如表2-1。

表 2-1 74LS194的控制端作用表

输 入

输 出

CLR CLK

0 1 1 1 1 1 1

× ↑ ↑ ↑ ↑ ↑ ↑

功能说明 n?1n?1n?1n?1S1 S0 SL SR Q A QB QC QD × × 0 1 0 1 1 0 1 0 1 1 0 0

× × × 0 × 1 0 ×

1 ×

× ×

× ×

0 0 1

n QB0 B

n QB0

n

QD

0 0 1 D

n

QD

异步清0

右移 右移 左移 左移 并行输入

保持

n QB C

n QC A

n QA

74LS198:74LS198引脚图如图2.3,它是具有左移、右移、清零、数据并入、并出、串入、串出等多种功能的4位双向移位寄存器,A、B、C、D、E、F、G、H为并行输入端,QA、QB、QC、QD、QE、QF、QG、QH为并行输出端,SLSI为左移串行输入端,SRSI为右移串行输入端,S1、S0为操作模式控制端,CLRN为直接无条件清零端,CLK为时钟脉冲输入端,S1、S0和CLRN端的控制作用如上表2-1。

以下是本次设计的输入储存部分电路图(图2.4)以及仿真图(图2.5、图2.6):

图2.4 存储部分电路图

仿真:在A端和B端分别输入00010010和00110101或者在C端和D端分别输入0011和1010。

图2.5存储部分4位寄存器仿真图

通过仿真可以得出:A、B端输入分别为00010010和00110101,输出分别为00010010和00110101。

图2.6 存储部分8位寄存器仿真图

通过仿真可已得出:C、D端输入分别为0011和1010,输出分别为0011和1010。

2.3.2 加/减法器部分

加法器是构成算术运算器的基本单元,是数字计算机的重要逻辑部件。 1.半加器

半加器是一种能对两个1位二进制数(不考虑来自低位的进位)进行相加运算而求得“和”及向相邻高位“进位”的逻辑电路。

根据半加器的逻辑功能,其真值表如表2-2:

表2-2 半加器真值表 输入 A B

输出 S CO

0 0 0 1 1 0 1 1

0 0 1 0 1 0 0 1

A、B为两个加数,S为相加的和,CO为向相邻高位的进位。由真值表,可以得到公式2.1:

S?AB?AB

CO?AB (2.1)

若采用异或门和与门实现, 则半加器的逻辑图如图2.7所示:

图2.7 半加器逻辑图

若采用与非门实现,且输入无反变量,则逻辑图为图2.8:

图2.8 半加器逻辑图

半加器的符号如图2.9:

图2.9 半加器符号

2.全加器

全加器是一种能对两个一位二进制数相加且考虑来自低位的进位位(相当于三个数相加),求出“和”及向相邻高位“进位”的逻辑电路。

根据全加器的逻辑功能,其真值表如表2-3:

表2-3 全加器真值表

输 入 CI A B 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1

输 出 S CO 0 0 1 0 1 0 0 1 1 0 0 1 0 1 1 1

A、B为两个加数,CI为来自低位进位, S为相加的和,CO为向相邻高位的进位。由真值表得表2-4和公式2.2:

表2-4 卡诺图

S?ABCI?ABCI?ABCI?ABCI

CO?AB?BCI?ACI (2.2)

3. 串行进位加法器(行波进位加法器)

两个多位数相加,除最低位外,每一位都必须使用全加器。若将低位全加器的进位输出端CO接到高位全加器的进位输入端CI,则可以构成多位串行进位加法器。

图2.10是一个4位串行加法器:

图2.10 4位串行加法器

串行加法器的优点是电路结构简单,缺点是运算速度慢。如上例,在最不利情况下,做一次加法运算需4个全加器的传输延迟时间。这种加法器只用于对运算速度要求不高的场合。

下图2.11在本次设计里采用的加法器为74LS283

图2.11 74283引脚图

74LS283:74LS283引脚图如图2.10,是4位二进制加法器,CIN是进位输入端,A1、 A2、 A3、A4为被加数输入端, B1、B2、B3、B4为加数输入端,SUM1、SUM2、SUM3、SUM4为输出端,COUT为进位输出端。

表2-5 为74LS283功能表:

表2-5 74283功能表

输 入 输 出

A L L L L H H H H

B L L H H L L H H

CO L H L H L H L H

∑ L H H L H L L H

C1 L L L H L H H H

要实现八位无符号的加法的话,只需将两片74LS283相连就可以了。两个二进制数的相减,即是加法减数的补码,而补码等于反码加“1”,由此可以使用加法、减法两种功能。

首先要实现反码求法:当输入为“0”时,取原码;输入为“1”时,取反码,于是可以用异或门来实现。

同时当输入为“1”时,CI=1,从而实现反码加“1”等于补码逻辑。 其电路图如图2.12:

图2.12 加/减法器电路图

以下是本次设计的加法运算电路图(图2.13)以及仿真图(图2.14):

图2.13 加法运算电路图

M=0时为加法,仿真:00001010+00001011=000010101。

图2.14 加法电路仿真图

以下是本次设计的减法运算电路图(图2.15)以及仿真图(图2.16):

图2.15 减法电路电路图

M=1时是减法,仿真:00001011—00000101=00000110。

图2.16 减法电路仿真图

2.3.3 乘法器部分

在计算机中,根据公式2..3可以将乘法运算分解为加法运算来实现,例如输入信号A=a3a2a1a0,B=b3b2b1b0,A、B都是4位二进制数,M是输出的乘积信号。

M=A×B

A×B=b0×A×20+b1×A×21+b2×A×22+b3×A×23=M (2.3)

上述运算过程中,A×2i可用A的左移i位来实现因此,乘法运算就转变为被乘数A左移及部分乘积求和的运算过程。于是我选用的4位二进制乘法器是由4个4位2进制加法器组成,这里的加法器我选择74LS283,乘法器的电路图如图2.17:

图2.17 乘法器电路图

在告诉4位乘法器中,器件74LS283在加/减法器部分已经详细介绍,根据上述乘法运算公式可得乘法运算的电路图如图2.18:

图2.18 乘法运算电路图

仿真图如图2.19:1011×1101=10001111。

图2.19 乘法运算仿真图

2.3.4 显示输出部分

显示部分选用LED发光二极管,Y1 、Y2 、Y 3 、Y4 、Y 5、 Y 6 、Y 7 、Y 8、 Y 9从低位到高位表示输出结果,亮为高电平表示1,不亮时为低电平表示0。

2.4整体电路的设计

整体电路的设计就是将上面各个部分的单元电路进行相连,注意各个高低电平之间的相连。对计算器的输入输出端口进行设计,输入位分别选用8位寄存器和4位寄存器,输

出端口Y1~~ Y 9按从低位到高位以发光二级管显示结果,二极管亮为高电平表示1,不亮为低电平表示0。

在设计时不能急于求成,应该将其划分为各个单元电路进行设计然后将设计出的单元电路进行相连。首先进行加减法的设计,因为加减法是最基本的计算,而且加减法操作的显示过程也具有典型的代表意义,乘法只是内部的计算过程不同,在显示上和加减法是一致的。

当数据输入时通过高低电平判断运算是加、减法还是乘、法,M2=1且M1=O时电路进行加法运算,M2=1且M1=1时电路进行减法运算,M2=0时电路进行乘法运算,最后译码显示结果。

电路图见下图2.20:

图2.20 简易计算机总电路图

为了验证总电路图的正确性,对总电路图的各种运算进行仿真: M2=1且M1=O==》加法:00000101+00001001=00001110,如图2.21:

图2.21 加法运算仿真图

M2=1且M1=1==》减法:00001001-00000011=00000110,如图2.22:

图2.22 减法运算仿真图

M2=0==》乘法:1011 ×1101=10001111,如图2.23:

图2.23 乘法运算仿真图

2.5 VHDL语言

use ieee.std_logic_1164.all; entity shifter is

port(data:in std_logic_vector(7 downto 0); clk:in std_logic; shift_left:in std_logic; shift_right:in std_logic; reset:in std_logic;

mode:in std_logic_vector(1 downto 0); qout:buffer std_logic_vector(7 downto 0)); end shifter;

architecture art of shifter is begin process begin

wait until(rising_edge(clk)); if(reset='1')then

qout<=\ else case mode is

when \

when \ when \when others=>null; end case; end if; end process; end art;

移位寄存器仿真图如图2.24:

图2.24 74194仿真图

3 结论与展望

3.1结论

通过多次的仿真,最终确定电路图的正确性,它能够完成本次设计的要求,实现加、减、乘等简单的运算,并且正确的显示结果。

3.2不足之处及对未来的展望

这次设计的最大不足之处就是在于输入和输出端的设计过于简单,其实在刚开始的设计思路中,输入端和输出端都设想以10进制输入输出的,输出部分选用7447七段译码器,但是设计到总图阶段才发现问题,七段译码器能显示的0~9无法满足计算器输出的需要,而当时以我掌握的知识在经过一番努力后无法解决这个问题,所以才选用了简单的二进制输入输出,我希望在将来我经过知识的积累一定能够完成当初的设想,设计出一个完善的,实用的简易计算器。

致 谢

这次的毕业论文设计,使我学会了如何通过各个途径,包括图书馆、书店和互联网来查找自己所需要的数据,学到一些以前不知道的知识,扩大了知识面,使我的自学能力有了进一步的提高。通过这次的论文设计,使我在如何做一篇正式的论文,如何以科学严谨的态度来研究课题方面有了一定的了解,为我以后在工作和深入研究方面打下了坚实的基础。

这次毕业论文设计,使我认识到加强与老师之间的交流的重要性。在这里,我要衷心地感谢我的指导老师孙蕾老师,在我设计的过程中,她对我进行了十分耐心的辅导,提供了丰富的知识,在我遇到困难的时候给与了适量的提示与鼓励,并对我提出的问题给与了详尽的解答。不但帮助我顺利的完成了论文,而且使我对自己更有信心,能更好的面对以后工作生活的中的挑战,最后,我还要感谢四年来的老师和同学们,是他们给了我支持,能使我顺利地完成了四年的大学学业。

参考文献

[1] 谭会生,张昌凡.EDA技术及应用[M].西安:西安电子科技大学出版社,2001:174-197. [2] 齐洪喜,陆颖.VHDL电路设计与应用实践教程[M].北京:清华大学出版社,2004:57-83. [3] 蒋璇,臧纯华.数字系统设计与PLD应用[M].北京:电子工业出版社,2005:8-41. [4] 阎石.数字电子技术基础.北京:高等教育出版社[M],1999:322-380. [5] 沈嗣昌.数字系统设计基础.北京:机械工业出版社[M],1996:13-35.

[6] 路而红,高献伟,洗立勤.电子设计自动化应用技术[M].北京:北京希望电子出版社,2000.326-337. [7] (美)Stefan Sjoholm著.边计年,薛宏熙译.用VHDL设计电子线路[M].北京:清华大学出版社,2000:185-193.

[8] IEEE Standard VHDL Language Reference Manual[J]. London:IEEE Press,1987.34-52.

[9] Lattice Inc. DATA BOOK Lattice Semiconductor Incorporation Remond[M]. London :Oxford Univ.Press, 1999:28-41.

[10] Sugeno M, Kang G T. Fuzzy modeling and control of multilayer incinerator [J]. Fuzzy Sets Syst., 1986, 18(2): 300-326.

附 录

总电路图(大图)

毕业设计(论文)原创性声明和使用授权说明

原创性声明

本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得 及其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。

作 者 签 名: 日 期: 指导教师签名: 日 期:

使用授权说明

本人完全了解 大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。

作者签名: 日 期:

学位论文原创性声明

本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律后果由本人承担。

作者签名: 日期: 年 月 日

学位论文版权使用授权书

本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权 大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。

涉密论文按学校规定处理。

作者签名: 日期: 年 月 日

导师签名: 日期: 年 月 日

注 意 事 项

1.设计(论文)的内容包括:

1)封面(按教务处制定的标准封面格式制作) 2)原创性声明

3)中文摘要(300字左右)、关键词 4)外文摘要、关键词 5)目次页(附件不统一编入)

6)论文主体部分:引言(或绪论)、正文、结论 7)参考文献 8)致谢

9)附录(对论文支持必要时)

2.论文字数要求:理工类设计(论文)正文字数不少于1万字(不包括图纸、程序清单等),文科类论文正文字数不少于1.2万字。

3.附件包括:任务书、开题报告、外文译文、译文原文(复印件)。 4.文字、图表要求:

1)文字通顺,语言流畅,书写字迹工整,打印字体及大小符合要求,无错别字,不准请他人代写 2)工程设计类题目的图纸,要求部分用尺规绘制,部分用计算机绘制,所有图纸应符合国家技术标准规范。图表整洁,布局合理,文字注释必须使用工程字书写,不准用徒手画 3)毕业论文须用A4单面打印,论文50页以上的双面打印 4)图表应绘制于无格子的页面上

5)软件工程类课题应有程序清单,并提供电子文档 5.装订顺序

1)设计(论文)

2)附件:按照任务书、开题报告、外文译文、译文原文(复印件)次序装订 3)其它

本文来源:https://www.bwwdw.com/article/5865.html

Top