数字电路加法运算电路
- 格式:doc
- 大小:1.32 MB
- 文档页数:26
1 设计任务描述1.1设计题目:加法运算电路1.2 设计要求1.2.1 设计目的(1) 掌握1位十进制加法运算电路的构成,原理和设计原理;(2)熟悉集成电路的使用方法。
1.2.2 基本要求(1) 设计键盘以及编码电路;(2) 设计加数寄存器A和被加数寄存器B单元;(3) 实现4bit二进制码加法的BCD调整;(3) 用数码管以十进制形式显示最后运算结果。
1.2.3 发挥部分(1) 拓展十进制减法;(2) MR存储运算中间值;(3)其他。
2 设计思路根据此次课程设计的要求,我设计的简单计算器包括两大部分:加法计算部分,减法计算部分。
其中加法计算部分由五个部分组成,键盘及编码电路、加数寄存器A和被加数寄存器B、加法运算电路、4bit二进制码加法的BCD调整和译码显示器。
减法计算部分和加法计算部分共用同一个键盘,其他部分由反相器,求补逻辑电路以及相应的译码显示器组成。
其中有几个难点:如何实现2位十进制和怎样利用寄存器把数据传输到加法器中。
因为经键盘及编码器输出的是2进制数,那么寄存器接受并输出的数据也是2进制数,所以加法器输出的数据应是8421BCD码,使显示装置最终显示十进制数。
因为1位十进制数的8421BCD码与二进制数表现形式相同,但2位十进制数的8421BCD码与二进制数不同,所以我设计的加法运算装置是由两个74S283N芯片来实现2位十进制数的输出。
原理是让第二个芯片的一个输入端接第一个芯片的输出端,另一个输入端进行对第一个芯片的运算结果进行判断,大于等于10时输入6即2进制数的0110,反之输入0。
输出结果即为2位十进制数的8421BCD码。
寄存器的设计是由一个74LS374N芯片和两个74S194N芯片组成的,其中两个74S194N芯片并联后与74LS374N芯片串联。
74LS374N芯片的脉冲由键盘的数字键提供,使得按下数字键后该寄存器就存储输入的数字,并通过译码显示器显示。
两个74S194N芯片的脉冲分别由键盘的+号和=号提供,分别存储加数与被加数并输入到第一个74S283N芯片中运算。
最后通过译码显示器显示运算结果。
当对应数字的开关被按下后,译码器显示数字同时将数字存到寄存器中。
然后经过加法运算,对运算结果进行BCD调整,最后显示运算结果。
1 键盘及编码电路:用开关及电阻组成键盘部分,用10-4线BCD优先编码器74147及四个非门组成编码电路,实现将0-9转化成二进制数。
2 加数寄存器A和被加数寄存器B:由4位并行寄存器74LS175实现对数据的存储,用2个4双向模拟开关4066、开关及非门判断是将二进制数存储到加数寄存器A还是被加数寄存器B。
3 加法运算电路:用集成4位超前进位加法器74HC283对加数和被加数进行运算。
4 4bit二进制码加法的BCD 调整:用4位数值比较器74HC85对和进行比较、控制加法器是加0还是加6从而达到调整的目的。
5 译码显示器:将8421BCD码通过译码显示器转化成十进制数并显示出来。
3 设计方案4 各部分电路设计及参数计算4.1键盘部分电路的设计图4.1键盘部分电路本电路中的数字键盘与开关控制键盘的设计是利用一个5伏电压产生高电平端,另一端与地相接,当开关即数字键盘0到9被按下接通时,有低电平输入信号产生,另一方面由控制开关J1的断开与连接并先后储存两个信号(加数和被加数)进不同的寄存器A和B。
由编码器进行编码,进行接下来的程序。
4.2编码电路的设计图4.2.1编码电路图4.2.2 寄存器74LS374N与键盘连接电路图上图为74LS147N编码器,是低电平有效的器件,当在键盘上按下相应的按键时便会有相应的电信号输入到编码器中,编码器接收的电信号就会把其经过编码后输出8421BCD码,它由9个输入端和4个输出端构成数据传输,可以对1到9的数字进行编码。
4.3寄存器部分电路4.3.1寄存器74LS374N的电路设计及工作原理图4.3.1 寄存器74LS374N与键盘连接电路图在以上例图中,我们可以看到,74LS374N译码器由8个输入端、8个输出端、CP端及高阻态端构成。
这里我们用到了4个输入端、四个输出端及CP端,其中CP端与键盘的数字键相连接,输入端与编码器相连接。
当按下键盘的数字键时编码器把数据传输到寄存器中,同时数字键接通与断开的信号相当于一个脉冲使寄存器可以输出数据,即按哪个数字键寄存器就会同时输出那个数字的2进制数4.3.2寄存器74LS194N电路设计及工作原理在运算过程中,当我们通过键盘,用74LS374N把加数输出后,按下键盘的加号键(即开关J2),此时加数寄存器有了一个脉冲信号;把加数输出,使其进入加法器中;在74LS374N 将被加数输出后,按下等号键(即开关J11),此时被加数寄存器得到一个脉冲信号把被加数输出到加法器中。
该电路图是两个开关控制元件4066BD和一个非门及两个寄存器组成的。
由于4双向模拟开关4066BD开关为高有效,工作电压在5伏以下,它由高电平控制,当按下加号时便会产生低电平,在经过非门控制便可以实现两个数据的分别储存。
它有4个开关来控制4个通道的传输与截止。
经过开关的选择处理最后把数据传给储存器。
寄存器74LS194N的作用为,实现加数与被加数的输出。
其构造如图4.3.2所示图4.3.2 寄存器74LS194N电路图4.4加法器74S283N的电路设计连接与BCD码的转换4.4.1 加法器的工作原理加法运算电路是加法运算电路的中心部分,它的线路图如下图4-4 加法电路加法运算电路的原理是将加数A与被加数B进行加法运算进行求和,过比较器将结果与九进行比较。
当结果小于或等于九的时候,我们不需要对其进行进行BCD调整。
此时可将二进制数进行加“0”。
如果结果大于九的时候,我们就需要对结果进行BCD调整,通过把二进制数进行加“6”来实现。
最后将调整过的结果用译码显示器显示输出。
此工作原理可具体为:加数与被加数经过74LS194N输出后进入首个加法器74S283N 中经过计算得出数字,此时另一个加法器需要判断得数是否大于等于10,所以需要在两个加法器中间建立一个门电路来判断得数。
如果得数大于等于10,经过门电路判断需要在另一个加法器输入6即0110,经过它的计算得出的数字即为本次运算的最终结果;如果小于10则不需要加6直接输出即可。
4.4.2 BCD码的转换C 0 d c b a L0 0 0 0 0 00 0 0 0 1 00 0 0 1 0 00 0 0 1 1 00 0 1 0 0 00 0 1 0 1 00 0 1 1 0 00 0 1 1 1 00 1 0 0 0 00 1 0 0 1 00 1 0 1 0 10 1 0 1 1 10 1 1 0 0 10 1 1 0 1 10 1 1 1 0 10 1 1 1 1 11 0 0 0 0 11 0 0 0 1 11 0 0 1 0 1加法电路真值表由该真值表经卡诺图可以得出:L=DC+DB。
由此我门可以对其进行8421BCD码的转换,如10的二进制码为1010 加六可得00010000。
我们可以看得出当得数大于等于十时我们可以对它加六来实现它的转换。
4.5译码显示电路4.5.1 译码显示电路的连接首先,我们要了解显示译码器的作用。
我们应用的是,DCD_HEX显示译码器,DCD_HEX 是将8421BCD码经过译码后以十进制数现实的装置。
译码显示电路的连接如图4.5所示图4.5.1 译码器与显示器的连接电路4.5.2 译码显示电路的工作原理译码就是把给定的代码进行翻译,变成相应的状态,用于驱动LED七段数码管,只要在它的输入端输入8421码,七段数码管就能显示十进制数字。
选用的译码器为7448N,输出高电平有效,接共阴极七段显示器。
当数据经加法器运算得出结果后,如果得数小于10则只在一个显示器里显示结果,另一个没有输出;如果得数大于等于10则在两个显示器里显示左后结果。
5 工作过程分析5.1加法工作过程在简单计算器运算加法过程中,如前第四部分工作原理所阐述的一样。
首先,,在键盘上按一个想要的数字,通过电阻电源的组合,将其转化为脉冲,输入到编码器中,将其转化为二进制数字。
然后,在加号,及开关的作用下,将被加数寄存在一个寄存器中。
输入加数,同样也寄存在另一个寄存器中。
两个数通过加法器运算,得出的数通过译码显示器显示出来。
当加法运算的结果经过数值比较器与二进制数“9”进行比较。
当结果小于或等于九的时候,我们不需要对其进行进行BCD调整。
当结果大于九的时候,我们就需要对结果进行BCD调整,通过把二进制数进行加六来达到。
最后将调整过的结果用译码显示器显示输出。
工作中运行出的结果如下:例如:4+7=11;图5.1.1 输入被加数4图5.1.2 输入加数7图5.1.3 得出结果115.2减法工作过程减法与加法在键入运算对象和寄存方式上类似,没有大体区别,只是在J11和J2等开关处并接开关J3,使其在寄存被减数和减数时起作用。
减法器主要有求补逻辑电路和相应的译码显示器构成。
其构造如下图所示:图5.2.1 输入加数7其工作过程如下:例如:8-5=3图5.2.2 输入被减数8图5.2.3 输入减数5图5.2.4 得出结果36 元器件清单7 主要元器件介绍7.1 10-4线BCD 优先编码器 741477.1.1 引脚图U174147NA 9B7C 6D143134152212111857463910图7.2 74LS374N 引脚图7.1.2功能表7.1.3 功能介绍74147为10-4线BCD 优先编码器,其功能是,把输入端代表“0”~“9”的这10个数字编码成BCD 码。
74147的编码输入有效电平为低电平,编码输出为BCD 反码。
由于它有优先编码功能,只要输入端有“0”输入(如果有多个输入端为“0”则以编号最大的输入端为准),输出端就输出与之对应的BCD 码的反码。
例如“3”“4”同时输入“0”,则按“4”进行编码,内部编码成BCD 码0100,输出则为BCD 的反码1011。
7.2 寄存器74LS374N7.2.1 引脚图U1674LS374N1D 32D 43D 74D 85D 136D 147D 178D 18~OC 1CLK111Q 22Q 53Q 64Q 95Q 126Q 157Q 168Q19图7.2 74LS374N 引脚图7.2.2 功能表7.2.3 功能介绍当~OC 接高电平时不管内部触发器为何值输出都为高阻状态即不输出。
当~OC 接低电平时,只有遇到脉冲的上升沿时才会输出,此时输出的数据为内部触发器的相应状态;没有脉冲时只暂存前一状态的数据。
7.3 寄存器74LS194N7.3.1引脚图U1074LS194N A 3B 4C 5D 6SL 7QA 15QB 14QC 13QD12SR 2~CLR 1S09S110CLK11图7.3 74LS194N 引脚图7.3.2 功能表7.3.3 功能介绍有4个输入端4个输出端,当S0、S1、~CLR 接高电平时,为并行寄存器。