简单计算器EDA设计

2018-12-09 23:49

目 录

第一章 设计原理................................................................................................................................ 1

1.1 课程设计依据 ........................................................................................................................ 1 1.2 课程设计内容及原理 ............................................................................................................ 1 1.3 课程设计要求 ........................................................................................................................ 1 第二章 设计流程................................................................................................................................ 2

2.1设计流程图 ............................................................................................................................. 2 第三章 模块连接................................................................................................................................ 3

3.1 四选一多路器 ........................................................................................................................ 3 3.2 7段数码管显示 ...................................................................................................................... 4

3.2.1 LED灯接线部分显示 .................................................................................................. 4 3.2.2数码管程序设计 ........................................................................................................... 5 3.3 循环扫描模块 ........................................................................................................................ 6 3.4 简易计算器总体程序设计 .................................................................................................... 7 第四章 仿真分析.............................................................................................................................. 10

4.1 四选一多路器 ...................................................................................................................... 10

4.1.1四选一多路器仿真图 ............................................................................................... 10 4.1.2四选一多路器仿真波形分析 ................................................................................... 10 4.2 数码管 .................................................................................................................................. 10

4.2.1数码管原理图与仿真图 ........................................................................................... 10 4.2.2数码管原理图与仿真图分析 ................................................................................... 11 4.3 循环扫描 .............................................................................................................................. 12

4.3.1循环扫描仿真图 ....................................................................................................... 12 4.3.2 循环扫描模块分析 .................................................................................................. 12 4.4 四选一多路器 ...................................................................................................................... 12

4.4.1简单计算器总体仿真图 ........................................................................................... 12 4.4.2简单计算器仿真图设计分析 ................................................................................... 13

第五章 设计体会.............................................................................................................................. 14 参考文献 ............................................................................................................................................ 15

第一章 设计原理

1.1 课程设计依据

在掌握常用数字电路功能和原理的基础上,根据EDA技术课程所学知识,利用硬件描述语言Verilog HDL、EDA软件Quartus II和硬件平台Cyclone/Cyclone II FPGA进行电路系统的设计。

1.2 课程设计内容及原理

设计一个简单计算器,采用简单4*4计算器键盘,输入2位十进制数进行+、-、 *、/ 四种运算,输入数据分别用两位数码管显示,输出用四位数码管显示4位10进制数,其中除法的结果显示分为商和余数两部分,要求设计键盘扫描存储逻辑,采用时序逻辑和有限状态机设计实现计算器操作的顺序步骤。

1.3 课程设计要求

1、 要求每个同学独立完成设计任务。

2、 课程设计说明书封面格式要求见《天津城市建设学院课程设计教学规范》附表1。 3、 课程设计的说明书要求简洁、通顺,计算正确,图纸表达内容完整、清楚、规范。 4、 测试要求:根据题目的特点,采用相应的时序仿真或者在实验系统上观察结果。 5、 课程设计说明书要求:

1) 说明题目的设计原理和思路、采用方法及设计流程。

2) 对各子模块的功能以及各子模块之间的关系作明确的描述。 3) 对实验和调试过程,仿真结果和时序图进行说明和分析。 4) 包含系统框图、电路原理图、HDL设计程序、仿真测试图。

1

第二章 设计流程

2.1设计流程图

设计流程如下图,分别用两个数码管表示二位十进制数,用一个case语句表示输入数值采用哪种运算方式,分别用00,01,10,11表示加、减、乘、除。首先对运算符号进行选择,然后再在各自模块进行计算,用3—8译码器选择从哪个数码管输出。

复位

硬件控制编码数码管输出

图1 硬件设计流程图

加法输入1减法芯片控制输出乘法输入2除法

图2 输出结果A. B的软件流程图

2

第三章 模块连接

3.1 四选一多路器

通过对四选一多路器设计,对计算器的运算符“+”,“-”,“*”,“/”进行选择

程序如下:

module jsq(a,b,c,out,out1,out2); input[7:0]a,b; input[1:0]c; output[15:0]out;

output[7:0]out1,out2; reg [15:0]out; reg[7:0]out1,out2; always@(a,b,c,out) case(c)

2'b00:begin out1=0; out2=0; out=a+b; end

2'b01:begin out1=0; out2=0; out=a-b; end

2'b10:begin out1=0; out2=0; out=a*b; end

2'b11:begin out1=a/b; out2=a%b;

out={out1,out2}; end

jsqa[7..0]out[15..0]b[7..0]out1[7..0]c[1..0]out2[7..0]inst 图3 四选一多路器

3

default:; endcase endmodule

3.2 7段数码管显示

3.2.1 LED灯接线部分显示

7段数码显示译码器原理:通常的小规模专用IC,如74或4000系列的器件只能作十进制BCD码译码,然而数字系统中的数据处理和运算都是2进制的,所以输出表达都是16进制的,为了满足16进制数的译码显示(数码管可以显示0~F),最方便的方法就是利用译码程序在FPGA/CPLD中来实现。

EL-EDA-Ⅲ实验系统的显示采用8位八段共阴极数码管(高电平有效),所对应的接口序号为:8段驱动接口:a、b、c、d、e、f、g、Dp;

作为7段译码器,输入为需要显示的数,输出信号LED7S的7位分别接如图4数码管的7个段,高位在左,低位在右。例如当LED7S输出为“1101101”时,数码管的7个段:g、f、e、d、c、b、a分别接1、1、0、1、1、0、1;接有高电平的段发亮,于是数码管显示“5”。注意:这里没有考虑表示小数点的发光管,如果要考虑,需要增加段h。

图4 共阴数码管及其电路

8位数码扫描显示原理:四位拨码开关产生8421BCD码,经译码电路后成为7段数码管(不包括小数点段位)的字形显示驱动信号(a…g)。

图5所示的是8位数码扫描显示电路,其中每个数码管的7个段: g、f、e、d、c、b、a都分别连在一起,8个数码管分别由8个选通信号k1、k2、…k8来选择。被选通的数码管显示数据,其余关闭。如在某一时刻,k3为高电平,其余选通信号为低电平,这时仅k3对应的数码管显示来自段信号端的数据,而其它7个数码管呈现关闭状态。根据这种电路状况,如果希望在8个数码管显示希望的数据,就必须使得8个选通信号k1、k2、…k8分别被单独选通,并在此同时,在段信号输入口加上希望在该对应数码管上显示的数据,于是随着选通信号的扫变,就能实现扫描显示的目的。

图5 8位数码驱动显示电路

扫描电路通过可调时钟输出片选地址SEL[2..0]。由SEL[2..0] 通过3-8译码器的输出决定了8位中的哪一位显示,a…g决定了显示什么字形。SEL[2..0]变化的快慢决定了扫描频率f扫描的快慢。

4


简单计算器EDA设计.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:青年成才主要靠外部机遇还是自身能力

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: