




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、EDA课程课程 实验四实验四组合逻辑电路设计组合逻辑电路设计EDA课组一、实验目的:一、实验目的:1、掌握组合逻辑电路设计原理及组合逻辑电路设计原理及特点;2、学习使用组合逻辑电路设计使用组合逻辑电路设计方法;二、实验内容二、实验内容2、通过仿真软件进行验证仿真通过仿真软件进行验证仿真 。1、 设计几种典型组合逻辑电路系统;设计几种典型组合逻辑电路系统;三、实验原理三、实验原理1、组合逻辑电路概念:、组合逻辑电路概念:是由门电路组合而成的具有某种功能的电路,电路中没有记忆单元,没有反馈是由门电路组合而成的具有某种功能的电路,电路中没有记忆单元,没有反馈电路,输入决定输出。电路,输入决定输出。组
2、合逻辑电路x1x2xiy1y2yj每个输出变量是输入变量的逻辑函每个输出变量是输入变量的逻辑函数,每个时刻的输出状态仅与当时数,每个时刻的输出状态仅与当时输入有关,与输入的原状态无关。输入有关,与输入的原状态无关。),(),(),(2121221121ijiixxxfyxxxfyxxxfyj下面观察已做过的实验特点下面观察已做过的实验特点这个这个数字选择电路数字选择电路仿真结果说明仿真结果说明y的输出完全由输入决定,输出同步随输入而的输出完全由输入决定,输出同步随输入而变,这就是组合电路特征。变,这就是组合电路特征。这个这个二进制半加器电路二进制半加器电路仿真结果说明仿真结果说明so与与co的
3、输出完全由输入决定,输出同的输出完全由输入决定,输出同步随输入而变,这就是组合电路特征。步随输入而变,这就是组合电路特征。实际逻辑问题真值表逻辑表达式最简(或最合理)逻辑表达式逻辑图化简变换2、组合逻辑电路设计方法、组合逻辑电路设计方法传统逻辑电路设计方法传统逻辑电路设计方法Verilog HDL逻辑电路设计方法逻辑电路设计方法只需根据实际的逻辑功能用只需根据实际的逻辑功能用Verilog HDL语言对其进行描述,然后仿真语言对其进行描述,然后仿真得到结果,观察是否符合实际逻辑功能。得到结果,观察是否符合实际逻辑功能。组合逻辑电路可采用组合逻辑电路可采用结构描述、数据流描述和行为描述方法结构描
4、述、数据流描述和行为描述方法实现,实现,一般采用后面两种方法,特殊情况采用结构描述。一般采用后面两种方法,特殊情况采用结构描述。三、实验步骤三、实验步骤1、设计一个二进制数字比较器,比较输入数据、设计一个二进制数字比较器,比较输入数据a与与b的大的大小,并分别输出到小,并分别输出到x,y和和z。输入输出abx(a=b)y(ab)00100010101000111100由上面真值表可知其逻辑关系为:bazbayabbax,结构描述:结构描述:采用内部逻辑实例化调用方式描述采用内部逻辑实例化调用方式描述module bj (a,b,x,y,z);input a,b;output x,y,z;wir
5、e not_a,not_b,F,G;not(not_b,b); not(not_a,a);and(F,not_a,not_b); and(G,a,b);or(x,F,G);and(y,not_a,b); and(z,a,not_b);endmodulebazbayababx,调用门元件的格式为:调用门元件的格式为:门元件名字门元件名字 ()其中普通门的端口列表按下面的顺序列出:其中普通门的端口列表按下面的顺序列出:(输出,输入(输出,输入1,输入,输入2,输入,输入3););比如:比如:and a1(out,in1,in2,in3); /三输入与门三输入与门or a2(out,in1,in2,
6、in3); /三输入或门三输入或门not N1(out1,out2,in); /1个输入个输入in,2个输出个输出out1,out2非门非门可以通过逻辑电路图输入进行设计,下面通过可以通过逻辑电路图输入进行设计,下面通过Verilog HDL软件软件进行电进行电路功能描述来完成设计。路功能描述来完成设计。数据流描述:数据流描述:常采用如下连续赋值语句:常采用如下连续赋值语句:assigndelay LHS_net=RHS_expression;建立工程及文件建立工程及文件comp2_1,方法同前面实验。,方法同前面实验。module comp2_1(x,y,z,a,b); input a ,b
7、; output x,y,z; assign x=(a=b)?1:0;/条件操作符? assign y=(ab)?1:0;endmodule*也可以采用逻辑表达式进行编写也可以采用逻辑表达式进行编写assign x=(a&b)| (a&b)assign y=a&bassign z= a&b可以观察到图中输入状态完全决定输出状态!输出同步跟可以观察到图中输入状态完全决定输出状态!输出同步跟随输入而变!随输入而变!行为描述:行为描述:常采用如下方式语句常采用如下方式语句always (输入参数)module comp2_2(x,y,z,a,b); input a ,
8、b; output x,y,z; reg x,y,z;always (a,b) begin if (a=b) begin x=1b1;y=1b0;z=1b0;end else if (ab) begin y=1b1;x=1b0;z=1b0;end else begin z=1b1;x=1b0;y=1b0;end end endmodulemodule comp2_1(x,y,z,a,b); input a ,b; output x,y,z;assign x=(a=b);assign y=(ab);endmodule2、编解码器设计、编解码器设计是一种二进制数字编码形式,利用是一种二进制数字编码
9、形式,利用4个二个二进制单元存储一位十进制的数码,使得二进进制单元存储一位十进制的数码,使得二进制与十进制转换得以快速进行。制与十进制转换得以快速进行。BCD码有多码有多种编码方式,现采用种编码方式,现采用8421码编码。码编码。如图如图in0in9代表对应代表对应09共共10个数字输入端,输入高电个数字输入端,输入高电平为有效输入,平为有效输入,out0out3对对应输出的应输出的BCD码。码。BCD码编码器in0in2in3in4out0out1out2out3in1in5in6in7in9in8输入端口输入端口输出端口输出端口in0in1in2in3in4in5in6in7in8in9o
10、ut0out1out2out310000000000000010000000000010010000000001000010000000011000010000001000000010000010100000010000110000000010001110000000010100000000000011001BCD编码器真值表编码器真值表由由BCD码真值表可得其输入与输出的逻辑关系为:码真值表可得其输入与输出的逻辑关系为:out0=in8+in9out1=in4+in5+in6+in7out2=in2+in3+in6+in7out3=in1+in3+in5+in7+in9可以根据上述输入与输出
11、的逻辑关系采用可以根据上述输入与输出的逻辑关系采用结构描述和数据结构描述和数据流描述流描述实现该实现该BCD编码器逻辑电路功能。编码器逻辑电路功能。module BCD_Enc(in,out);input9:0 in;output3:0 out; reg3:0out; always (in) /always过程语句过程语句 begin case(in) 10b00_0000_0001:out=0; 10b00_0000_0010:out=1; 10b00_0000_0100:out=2; 10b00_0000_1000:out=3; 10b00_0001_0000:out=4; 10b00_0
12、010_0000:out=5; 10b00_0100_0000:out=6; 10b00_1000_0000:out=7; 10b01_0000_0000:out=8; 10b10_0000_0000:out=9; endcase endendmoduleBCD码编码器程序:采用行为描述实现编码逻辑电路功能码编码器程序:采用行为描述实现编码逻辑电路功能仿真结果如图:仿真结果如图:可见输出完全由输入决定,为组合逻辑电路。可见输出完全由输入决定,为组合逻辑电路。module bcd_enc(in,out); input9:0in; output3:0out; assign out=func_enc
13、(in); /函数调用 function 3:0 func_enc; /函数定义 input9:0 in; case(in) 10b00_0000_0001:func_enc=0; 10b00_0000_0010:func_enc=1; 10b00_0000_0100:func_enc=2; 10b00_0000_1000:func_enc=3; 10b00_0001_0000:func_enc=4; 10b00_0010_0000:func_enc=5; 10b00_0100_0000:func_enc=6; 10b00_1000_0000:func_enc=7; 10b01_0000_00
14、00:func_enc=8; 10b10_0000_0000:func_enc=9;endcaseendfunctionendmodule也可以通过以下函数调用方法实现:也可以通过以下函数调用方法实现:实验报告作业 给出详细BCD解码器设计过程。BCD码译码器in0in2in3in4out0out1out2out3in1in5in6in7in9in8BCD码译码器的输入为码译码器的输入为BCD码,输出为对应的码,输出为对应的09的数字。正是编的数字。正是编码器的相反过程。采用三种逻辑电路描述方法设计实现。码器的相反过程。采用三种逻辑电路描述方法设计实现。3、BCD译码器参考程序设计module
15、 bcd_dec(in,out); input3:0in; output9:0; out;out err; assign err,out=func_dec(in); /函数调用 function 10:0 func_dec; /函数定义 input3:0 in; case(in) 0 :func_enc=1b0,10b00_0000_0001 ; 1:func_enc=1b0,10b00_0000_0010 ; 2:func_enc =1b0,10b00_0000_0100 ; 3:func_enc =1b0,10b00_0000_1000 ; 4:func_enc=1b0,10b00_0001_0000 ; 5:func_enc=1b0,10b00_0010_0000 ; 6:func_enc=1b0,10b00_0100_0000 ; 7:func_enc=1b0,10b00_1000_0000 ; 8:func_enc =1b0,10b01_0000_0000 ; 9:func_enc=1b0,10b10_0000_0000 ; default:func_enc=1b1,10b00_0000_0000 ;/出错时err为1 endcaseendfunctionendmodulemodule add4_bcd(cout,sum,ina,inb,cin);input c
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 油气田开发过程中的能源管理与优化考核试卷
- 电子书版权交易市场的现状与挑战考核试卷
- 木材干燥与锯材加工考核试卷
- 灯具回收与再利用考核试卷
- 生物技术在植物抗逆性育种中的应用考核试卷
- 燃气具企业供应链协同与物流优化考核试卷
- 医疗数据要素市场交易电子审批管理
- 泌尿系统上尿路结石护理
- GPS基础知识与主流应用方案
- 期中模拟卷(云南专用)-2024-2025学年八年级英语下学期核心素养素质调研模拟练习试题(考试版)A4
- 鼠疫防控知识宣传课件
- 山东省国控设计集团有限公司招聘真题2024
- 公路工程资料管理办法
- 记者证考试心理素质试题及答案
- GB/T 45417-2025汽车再生制动功能缺陷分析指南
- 2021年5月四级江苏省人力资源管理师考试《理论知识》真题及答案
- 导学案:5.5 跨学科实践:制作望远镜(学生版)
- 污水处理日常运营管理与维护方案
- 2025年河南机电职业学院单招职业技能测试题库及参考答案
- 第11课《山地回忆》课件-2024-2025学年统编版语文七年级下册
- 中国教育史(第四版)全套教学课件
评论
0/150
提交评论