数字电路-2进制优先编码器
- 格式:doc
- 大小:61.50 KB
- 文档页数:6
数电实验二数据编码器和译码器功能验证数据编码器和译码器是数电实验中常用的电路元件,用于将逻辑电平转换为二进制编码或者从二进制编码转换为逻辑电平。
本实验将验证编码器和译码器的功能。
编码器是一种将多个输入信号转换为对应的二进制编码输出信号的电路。
常见的编码器有优先编码器,BCD编码器和十进制-二进制编码器等。
本实验将以优先编码器为例进行验证。
实验所需器件和元件:1.优先编码器芯片(例如74LS148)2.开关等输入元件3.LED灯等输出元件4.电源和杜邦线等实验用品实验步骤:1.连接电源和电路元件:将电源连接到优先编码器芯片上,并将开关等输入元件和LED灯等输出元件连接到芯片上相应的管脚上。
2.编码器功能验证:通过设置不同的输入信号,观察输出信号的变化。
例如,设置开关为输入信号,并将不同的开关打开或关闭,观察LED灯的亮灭情况。
3.结果分析:根据编码器的功能特点,分析输出信号与输入信号的对应关系。
对于优先编码器而言,输入信号优先级较高的输入将被编码输出,而其他输入则被忽略。
4.译码器功能验证:将输入信号与编码器的输出信号连接,观察译码器的输出信号。
可以通过设计逻辑门电路来实现译码器的功能。
5.结果分析:根据译码器的功能特点,分析输出信号与输入信号的对应关系。
例如,对于BCD编码器而言,4位BCD码将被译码为10位二进制信号。
6.实验总结:通过本实验的验证,可以得出编码器和译码器的功能特点和应用范围。
编码器可以将多个输入信号编码为二进制信号输出,而译码器可以将二进制信号译码为对应的输出信号,用于实现数据的编码和译码。
本实验的目的是验证编码器和译码器的功能,通过观察输入信号和输出信号的对应关系,可以了解编码器和译码器的工作原理,并掌握它们的应用场景。
实验结果应与预期结果一致,即输入信号与编码/译码输出信号之间有明确的对应关系。
同时,实验还可以加深对数字电路和逻辑门电路的理解,提高实验操作能力和分析问题的能力。
编码器二进制编码器一、二进制编码器:用n位二进制代码对2n个信号进行编码的电路。
二、电路图:所下图所示为3位二进制编码器。
输入:I0~I7为8个需要编码的信号输出:Y2、Y1、Y0为三位二进制代码由于该编码器有8个输入端,3个输出端,故称8线一3线编码器。
三、输出逻辑函数提问:为什么I0 未画在图中,且未出现在表达式中?或者:一般编码器输入的编码信号为什么是相互排斥的?编码器在任何时刻只能对一个输入信号进行编码,不允许有两个或两个以上的输入信号同时请求编码,否则输出编码会发生混乱。
这就是说,I0 、I1 ……I7 这8个编码信号是相互排斥的。
在I1~I7 为0时,输出就是的编码,故未画。
四、真值表。
五、分析:输入信号为高电平有效(有效:表示有编码请求)输出代码编为原码(对应自然二进制数)二一十进制编码器提问:为什么要用二一十进制编码器?人们习惯用十进制,而数字电路只识别二进制,则需要相互转换。
例如:键盘编码器一、二一十进制编码器:将0~9十个十进制数转换为二进制代码的电路。
二、逻辑电路图需要编码的10个输入信号:I0~I9输出4位二进制代码:Y3、Y2、Y1、Y0三、输出逻辑函数四、真值表。
五、分析:当编码器某一个输入信号为1而其它输入信号都为0时,则有一组对应的数码输出,如I7=1时,Y3 Y2 Y1 Y0=0111。
输出数码各位的权从高位到低位分别为8、4、2、1。
因此,图6.3.2所示电路为8421BCD码编码器。
由表2可看出,该编码器输入I0~I9 这10个编码信号也是相互排斥的。
优先编码器提问:若多个信号同时有效,以上编码器能否正常工作?如何克服?一、优先编码器:允许同时输入数个编码信号,而电路只对其中优先级别最高的信号进行编码。
优先级别高的编码器信号排斥级别低的。
优先权的顺序完全是根据实际需要来确定的。
二、MSI器件:二—十进制优先编码器CT74LS147,又称为10线-4线优先编码器1.真值表2.逻辑功能分析根据CT74LS147的真值表(编码表)说明其逻辑功能:⑴数码输出端:,为8421BCD码的反码。
第4章习题及解答用门电路设计一个4线—2线二进制优先编码器。
编码器输入为3210A A A A ,3A 优先级最高,0A 优先级最低,输入信号低电平有效。
输出为10Y Y ,反码输出。
电路要求加一G 输出端,以指示最低优先级信号0A 输入有效。
题 解:根据题意,可列出真值表,求表达式,画出电路图。
其真值表、表达式和电路图如图题解所示。
由真值表可知3210G A A A A =。
(a)0 0 0 00 0 0 10 0 1 00 0 1 10 1 0 00 1 0 10 1 1 00 1 1 11 0 0 0 1 0 0 11 0 1 01 0 1 11 1 0 01 1 0 11 1 1 01 1 1 10000000000000000000000000010100011111010110000103A 2A 1A 0A 1Y 0Y G真值表≥1&1Y 3A 2A 1&&1A 0Y &1GA 00 01 11 100010001111000000001101113A 2A 1A 0A 03231Y A A A A =+00 01 11 1000000011110001000011103A 2A 1A 0A 132Y A A =(b) 求输出表达式(c) 编码器电路图图 题解4.1试用3线—8线译码器74138扩展为5线—32线译码器。
译码器74138逻辑符号如图(a )所示。
题 解:5线—32线译码器电路如图题解所示。
&&&&11EN01234567BIN/OCTENY 0&G 1G 2AG 2B42101234567BIN/OCTEN&G 1G 2A G 2B42101234567BIN/OCT EN&G 1G 2A G 2B42101234567BIN/OCT EN&G 1G 2A G 2B421A 0A 1A 2A 3A 4Y 7Y 8Y 15Y 16Y 23Y 24Y 31图 题解4.3写出图所示电路输出1F 和2F 的最简逻辑表达式。
常见的编码器有:二进制编码器、二一十进制编码器、优先编码器用数字或文字和符号来表示某一对象或信号的过程,称为编码。
编码器是专门用于将输入的数字信号或文字符号,按照一定规则编成若干位的二进制代码信号,以便于数字电路开展处理。
常见的编码器有:二进制编码器、二一十进制编码器、优先编码器等。
二进制编码器一位二进制代码有O和1,可以表示两个信号,两位二进制代码有00,01,10和11,可以表示4个信号,屁位二进制代码有2n 种,可以表示2n个信号。
用而位二进制代码对N=2n个信号开展编码的电路称为二进制编码器。
现以3位二进制编码器为例来了解它的工作原理。
输入是8个需要开展编码的信号I o II,17编成对应的二进制代码输出,由于输人信号共有N=8个,根据N=2n=8可知,输出应该是n=3位的二进制代码,用Y2,Y1.,YO表示。
由于编码器在任何时刻,只能对一个输人信号开展编码,即不允许有两个和两个以上输人信号同时存在的情况出现,真值表见表1,这个真值表也称为编码表。
由表1可写出输出函数Y0Y1Y2的表达式为二一十进制编码器二一十进制编码器是将十进制的10个数码0,1,2, (9)成对应的二进制代码的电路,它的输人是0,1,2,…,9十个十进制数字,输出是对应的4位二进制代码,这9个二进制代码称为二一十进制代码,简称BCD码。
4位二进制代码可以组成16种组合,而十进制编码器只需其中的10个组合,所以编码方式也很多,有8421、5421、循环码、余三码等。
常用的8421编码,就是在4位二进制代码的16种状态中取出前面10种状态,表示0〜9十个数码,后面6个状态去掉。
如下表2所示,二进制代码各位所代表的十进制数从高到低位依次为8,4,2,1,称为“权”,而后把每个数码乘以各位的“权”,相加即得出该二进制代码所表示的一位十进制数。
优先编码器741.S148在数字系统中,常常要控制几个工作对象,如微型计算机主机要控制打印机、磁盘驱动器、输人键盘等。
数字逻辑电路设计第二版答案【篇一:蒋立平版数字逻辑电路与系统设计习题答案】1.1 将下列二进制数转换为等值的十进制数。
(1)(11011)2(2(10010111)2 (3)(1101101)2 (4(11111111)2 (5)(0.1001)2 (6 (0.0111)2 (7)(11.001)2 (8 (101011.11001)2题1.1 解:(1)(11011)2 =(27)10(10010111)2 =(151)10(3)(1101101)2 =(109)10 (11111111)2 =(255)10(5)(0.1001)2 =(0.5625)10 (0.0111)2 =(0.4375)10(7)(11.001)2 =(3.125)10(101011.11001)2 =(43.78125)101.3 数。
(1)(1010111)2(110111011)2 (3)(10110.011010)2(4)(101100.110011)2 题1.3 解:(1)(1010111)2 =(57)16 =(127)8(2)(110011010)2 =(19a)16 =(632)8 (3)(10110.111010)2 =(16.e8)16 =((4)(101100.01100001)2 =(2c.61)16 =1.5 将下列十进制数表示为8421bcd码。
(1)(43)10(95.12)10 (3)(67.58)10 ((932.1)10题1.5 解:(1)(43)10 =(01000011)8421bcd(2)(95.12)10 =(10010101.00010010)8421bcd (3)(67.58)10 =(01100111.01011000)8421bcd (4)(932.1)10 =(1.7 将下列有符号的十进制数表示成补二进制数。
(1) +13 (2)?9(3)+3 (4)?题1.7解:(1) +13 =(01101)2 ((10111)2(3) +3 =(00011)2 ((11000)21.9 用真值表证明下列各式相等。
数字电路实验报告
姓名:陈小龙学号:14051113 班级:
专业:网络工程课程名称:数字电路设计
任课老师:张怀相实验名称:2进制优先编码器1.实验程序源代码
module cxl_4(IN,Y,EN,DONE);
input[7:0] IN;
input EN;
output DONE;
output[2:0] Y;
reg DONE;
reg[2:0] Y;
always @(*)
begin
if(!EN)
begin
if(IN[0]==1)
begin
Y=3'b000;
DONE=1;
end
else if(IN[0]==0&&IN[1]==1)
begin
Y=3'b001;
DONE=1;
end
else if(IN[0]==0&&IN[1]==0&&IN[2]==1)
begin
Y=3'b010;
DONE=1;
end
else
if(IN[0]==0&&IN[1]==0&&IN[2]==0&&IN[3]==1)
begin
Y=3'b011;
DONE=1;
end
else
if(IN[0]==0&&IN[1]==0&&IN[2]==0&&IN[3]==0&&IN[4]== 1)
begin
Y=3'b100;
DONE=1;
end
else
if(IN[0]==0&&IN[1]==0&&IN[2]==0&&IN[3]==0&&IN[4]== 0&&IN[5]==1)
begin
Y=3'b101;
DONE=1;
end
else
if(IN[0]==0&&IN[1]==0&&IN[2]==0&&IN[3]==0&&IN[4]== 0&&IN[5]==0&&IN[6]==1)
begin
Y=3'b110;
DONE=1;
end
else
if(IN[7]==1&&IN[6]==0&&IN[5]==0&&IN[4]==0&&IN[3]== 0&&IN[2]==0&&IN[1]==0&&IN[0]==0)
begin
Y=3'b111;
DONE=1;
end
else
if(IN[7]==0&&IN[6]==0&&IN[5]==0&&IN[4]==0&&IN[3]== 0&&IN[2]==0&&IN[1]==0&&IN[0]==0)
begin
Y=3'b000;
DONE=0;
end
end
else
begin
Y=3'b000;
DONE=0;
end
end
endmodule
2.仿真波形
3.电路图
4.约束文件
NET "IN[0]" LOC = T5; NET "IN[1]" LOC = V8; NET "IN[2]" LOC = U8; NET "IN[3]" LOC = N8; NET "IN[4]" LOC = M8; NET "IN[5]" LOC="V";
NET "IN[6]" LOC = T9; NET "IN[7]" LOC = T10; NET "EN" LOC = A8; NET "Y[0]" LOC = T11; NET "Y[1]" LOC = R11; NET "Y[2]" LOC = N11; NET "DONE" LOC = M11; NET "IN[5]" LOC = V9;
5.思考与探索。