数电课程设计组合逻辑设计.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数电课程设计组合逻辑设计

数字逻辑 设计 及 应用 课程设计 组合逻辑设计 题目 使用74LS83构成4位二进制全加\全减器。 具体要求:1)列出真值表; 2)画出逻辑图; 3)用Verilog HDL进行仿真; 设计原理 a、芯片简介 74LS83本身为一个4位全加器,具有A1、A2、A3、A4、B1、B2、B3、B4、C0九个输入端,其中A1、A2、A3、A4、B1、B2、B3、B4是加数和被加数的数据输入端,C0为初始进位。S1、S2、S3、S4、C4五个输出端口,S1、S2、S3、S4为本位和,C4为进位输出。 74LS83逻辑图 b、设计思路 由于芯片本身为4位全加器所以加法方面就只要用它自身,只要加入一个控制端来控制它进行加法还是减法和减法的实现原理即可。在二进制中减法的运算使用其补码(two’s complement)来进行,把原来的正数转换为负数的补码变成加法运算。我们知道,从一个数的原码到它的相反数的补码是进行逐位取反再在末位加1,为了实现这一加1运算可以在让电路做减法时把初始进位设为1。加入一个控制端Adder_Subtraction来控制电路做加法还是减法,令:Adder_Subtraction=1时电路做加法,Adder_Subtraction=0时电路做减法。则有如下关系: 初始进位端 C0=~Adder_Subtraction + Adder_Subtraction C0(初始进位输入) A1~A4不作变化 B1=~B1 ~Adder_Subtraction | B1 Adder_Subtraction B2=~B2 ~Adder_Subtraction | B2 Adder_Subtraction B3=~B3 ~Adder_Subtraction | B3 Adder_Subtraction B4=~B4 ~Adder_Subtraction | B4 Adder_Subtraction 设计结果 a、Verilog 程序 module adder(A1,A2,A3,A4,B1,B2,B3,B4,C0,Adder_Subtraction,S1,S2,S3,S4,C4); input A1,A2,A3,A4,B1,B2,B3,B4,C0,Adder_Subtraction; output S1,S2,S3,S4,C4; wire WIRE_0,WIRE_1,WIRE_2,WIRE_3,WIRE_4,WIRE_23, WIRE_6,WIRE_7,WIRE_9,WIRE_11,WIRE_12,WIRE_13,WIRE_14,WIRE_15,WIRE_16,WIRE_17,WIRE_18, WIRE_19,WIRE_21; \7483 b2v_inst( .B4(WIRE_0), .C0(WIRE_1), .A1(A1), .A2(A2), .B1(WIRE_2), .B2(WIRE_3), .A3(A3), .B3(WIRE_4), .A4(A4), .S3(S3), .S4(S4), .S2(S2), .C4(C4), .S1(S1)); assign WIRE_21 = ~B3; assign WIRE_15 = WIRE_23 WIRE_6; assign WIRE_13 = WIRE_7 WIRE_23; assign WIRE_18 = Adder_Subtraction B3; assign WIRE_11 = WIRE_9 WIRE_23; assign WIRE_14 = Adder_Subtraction B2; assign WIRE_19 = Adder_Subtraction C0; assign WIRE_12 = B1 Adder_Subtraction; assign WIRE_2 = WIRE_11 | WIRE_12; assign WIRE_3 = WIRE_13 | WIRE_14; assign WIRE_7 = ~B2; assign WIRE_0 = WIRE_15 | WIRE_16; assign WIRE_4 = WIRE_17 | WIRE_18; assign WIRE_6 = ~B4; assign WIRE_23 = ~Adder_Subtraction; assign WIRE_9 = ~B1; assign WIRE_1 = WIRE_19 | WIRE_23; assign WIRE_17 = WIRE_21 WIRE_23; assign WIRE_16 = Adder_Subtraction B4; e

文档评论(0)

1444168621 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档