贾熹滨教材习题解答14章

上传人:博****1 文档编号:569875015 上传时间:2024-07-31 格式:PPT 页数:87 大小:3.10MB
返回 下载 相关 举报
贾熹滨教材习题解答14章_第1页
第1页 / 共87页
贾熹滨教材习题解答14章_第2页
第2页 / 共87页
贾熹滨教材习题解答14章_第3页
第3页 / 共87页
贾熹滨教材习题解答14章_第4页
第4页 / 共87页
贾熹滨教材习题解答14章_第5页
第5页 / 共87页
点击查看更多>>
资源描述

《贾熹滨教材习题解答14章》由会员分享,可在线阅读,更多相关《贾熹滨教材习题解答14章(87页珍藏版)》请在金锄头文库上搜索。

1、数字逻辑基础与数字逻辑基础与Verilog硬件描述语言硬件描述语言贾熹滨等贾熹滨等 清华大学出版社清华大学出版社 2012.08.习题解答习题解答1 - 4章章第第1章章 数制和码制数制和码制1.1 写出下列各数的按权展开式(1024.5)10 = 1103 + 0102 + 2 101 + 4 100 + 5 10-1(10110)2 = 124 + 023 + 1 22 + 1 21 + 0 20(237)8 = 282 + 3 81 + 7 80(A01D)16 = A163 + 0162 + 1 161 + D 160 = (10163 + 0162 + 1 161 + 13 160)

2、101.2 完成下列数制转换(255)10=(11111111)2=(377)8=(FF)16(52.125)10=(110100.001)2=(64.1)8=(34.2)16(110011) 2 =(51) 10 =(63)8=(33)16(400) 8 =(100000000)2=(256) 10 =(100)16(3FF) 16 =(1023) 10 =(1111111111) 2 =(1777) 8(1A.5)H=(11010.0101)B=(26.3125)D=(32.24)O(376)8=(11111110)2=(FE)16(44.375)10=(101100.011)2=(54.

3、3)8借助二进制1.4 完成下列运算(110101)2 +(101001)2=(1011110)2(1001101)2 (110011)2=(11010)2(A378)16+(4631)16=(E9A9)16(1B34)16 (CA5)16=(E8F)161.5 写出下列真值所对应的一字节长(1位符号,7位数值)的原码、反码和补码。题题7位真值位真值原码原码反码反码补码补码+0.00101+0.00101000.00101000.00101000.00101000.11010.11010001.11010001.00101111.00110000.10.10000001.10000001.01

4、111111.1000000+11001+0011001000110010001100100011001100000010001000100011110111111110001000000010000000无无无无10000000111110011111100111111110000011100001+11111+00111110001111100011111000111111.6 先写出下列十进制数 x 的真值,再写出所对应的一字节长(1位符号,7位数值)的原码、反码和补码。十进制十进制 x7位真值位真值原码原码反码反码补码补码0+000000000000000000000000000000

5、000000000100000001111111100000000126+11111100111111001111110011111101261111110111111101000000110000010127+11111110111111101111111011111111271111111111111111000000010000001128+10000000无无无无无无12810000000无无无无100000001.7 已知x补,求x原、x反及真值 x已知x补x原x反真值 x10111010110001101011100110001101.11111111.00000011.11111

6、100.00000010.01010100.01010100.0101010+ 0.010101010000000无无100000001.8 已知x反,求x补及真值 x已知x反x补真值 x101101011011011010010101.01100101.01100110.10011011.9 已知x原,求x补已知x原x补1.00110101.110011010111101110000110.00110000.00110001.10 先写出下列十进制数 x 的真值,再写出所对应的一字节长(1位符号,7位数值)的补码。十进制数 x7位真值x补13/640.00110100.001101013/1

7、280.00011011.111001115/320.01111000.011110011/640.00101101.11010101.11 已知(178)10,如何用8421码、余3码、2421码和格雷BCD码表示?(178)10(0001 0111 1000)8421(0100 1010 1011)余3码(0001 1101 1110)2421(0001 0100 1100)格雷BCD1.12 完成下列转换(0011 0100 1000)8421(0110 0111 1011)余3码(348)10(1001 0010 0101)8421(1111 0010 1011)2421(925)10

8、(469) 10 (0100 0110 1001)8421(0111 1001 1100)余3码(0110 0101 1000)格雷BCD(0011 1100 1110)2421(0110 1001 1011)余3码(0011 0110 1000)84211.13 求(0100 1001 0110)8421关于(1000)10的补数的8421码表示。(0100 1001 0110)8421(496)10(1000)10 (496)10 =(504)10 (0101 0000 0100)84211.14 求(0100 0011 1100)余3码关于(1000)10的补数的余3码表示。(0100

9、0011 1100)余3码(109)10(1000)10 (109)10 =(891)10 (1011 1100 0100)余3码1.15 写出关于8421码、余3码、2421码的6个伪码。8421码的伪码:10101111余3码的伪码:00000010 和 110111112421码的伪码:010110101.17 分别确定下列二进制信息码的奇校验位和偶校验位的值。信息码奇校验位偶校验位101001110110011101001110110111110001第第2章章 逻辑代数基础逻辑代数基础2.3 写出逻辑命题的真值表(2)设有A、B、C三个输入信号,当三个信号相同或其中任意两个信号为0时

10、,输出为1,否则输出为0。A B CF00010011010101101001101011001111A B CF00000011010101101001101011001111(1)设有A、B、C三个输入信号,当其中有奇数个信号为1时,输出为1,否则输出为0。(3) 结论同(1),但变量为1表示开关动作。2.4 写出下面逻辑表达式的真值表:(1)A B CF00010010010101101001101111011110(2)略2.5 写出下列表达式的对偶式 2.6 运用反演规则,写出下列表达式的反演式。 2.7 用逻辑代数的公理、定理及规则,证明下列等式。 2.8 试写出 的或与式、与非式

11、、或非式及与或非式。或与式与非式或非式与或非式2.9 下列函数中,哪些变量取值使 F = 1 ?根据最大项表达式显性给出使F=0的组合,有变量ABC取值011、100、101、110和111,使F=1。根据最小项表达式显性给出使F=1的组合,有变量XYZW取值0001、0011、0100、0110、0111、1100、1110和1111,使F=1。由该函数最大项表达式可见,所有变量组合均使F=0,所以,没有变量组合使F=1。当ABC取值100、110和111,使F=1。2.10 下列函数中,哪些变量取值使 F = 0 ?根据最小项表达式显性给出使F=1的组合,有变量X3X2X1取值000、01

12、1、101和110,使F=0。根据最大项表达式显性给出使F=0的组合,有变量ABC取值000、010和011,使F=0。由该函数最小项表达式可见,所有变量组合均使F=1,所以,没有变量组合使F=0。根据最大项表达式显性给出使F=0的组合,有变量X3X2X1取值011、101、110和111,使F=0。2.11 根据真值表,写出题2.3中最小项表达式及最大项表达式。2.12 将下列逻辑表达式转换为最小项之和的形式。2.13 将下列逻辑表达式转换成最大项之积的形式。因F4恒为1,故无最大项之积。2.14 已知F=m3(0,1,5,6),写出原函数的最大项表达式、反函数的最小项 表达式以及反函数的最

13、大项表达式。2.15 用逻辑代数化简法,将下列逻辑函数化简为最简与或式。2.16 用卡诺图化简法,将下列逻辑函数化简为最简与或式。 00 01 11 10011111ABCF000111100000101100100000ABCDF 000111100010111111111011ABCDF 000111100001000110010ABCDF 2.17 用卡诺图化简法,将下列逻辑函数化简为最简或与式。000111100011011111111011ABCDF求最简或与式方法之一:圈0,求反函数的与或式;再用摩根定理或反演规则,转换为原函数的或与式。 000111100000010110001

14、0000ABCDF 00 01 11 100111111ABCF此题也可圈1,求出F的与或式,然后用分配律转换 00 01 11 10010000ABCF2.18 已知 F=m4(0,1,2,5,6,8,9,10,13,15),用卡诺图化简法,求F的最简与或式、最简与非式、最简或与式、最简或非式和最简与或非式。00011110001101111111110111ABCDF00011110001101111111110111ABCDF与或与非或与与或非或非2.19 用卡诺图化简法,求下列具有无关项的逻辑函数的最简与或式和最简或与式。 00011110001d0111111110dABCDF000

15、11110001d0111111110dABCDF0001111000011111111d101ABCDF0001111000011111111d101ABCDF注意:d 的利用原则。00011110000dd001d011d010d00ABCDF00011110000dd001d011d010d00ABCDF注意:d 的利用原则。0001111000dd01000110010dABCDF0001111000dd01000110010dABCDF2.20 试用卡诺图对已知函数作逻辑运算。(2)已知 F1=m4(2,4,6,9,13,14) +d(0,1,3,8,11,15) F2=m4(4,5

16、,7,9,12,13,14) +d(1,3,8,10) 试求F1F2、F1+F2、F1F2的最简与或式。0001111000d10d01d01111d0dd101110ABCDF10001111000011d01d11111d10010001dABCDF20001111000010d01d01111d000100010ABCDF1F20001111000d11d01d11111d1dd10111dABCDF1+F20001111000d01d01d10011d1dd10110dABCDF1F22.21 某逻辑网络的输入为8421码(用A,B,C,D表示),当其对应的十进制数 X5时,输出 F=

17、1,否则 F=0。试求F的最简与非式,并画出逻辑图。分析命题:运用卡诺图时注意无关项的位置0001111000d101d1111dd101ddABCDF逻辑图,略2.22 某逻辑网络的波形图如图习某逻辑网络的波形图如图习2-1 所示,其中所示,其中A、B、C、D为输入信号,为输入信号,F为输出信号,根据波形图分析为输出信号,根据波形图分析输出与输入之间的逻辑关系,写出函数输出与输入之间的逻辑关系,写出函数F(A,B,C,D)的最简或与式,并画出最简或非门实现电路的逻辑图。的最简或与式,并画出最简或非门实现电路的逻辑图。A B C DF000000001000100001100100001011

18、011010111010000100111010110110110001101111101111100001111000011111110111ABCDF由波形图填真值表时注意变量顺序由波形图填真值表时注意变量顺序图略满足输入无反变量要求,用替代尾因子法或禁止逻辑法将下列逻辑函数用最少与非门实现,画出逻辑图。 00 01 11 10011111ABCF&BCF思考 00 01 11 100111111ABCF逻辑图,略思考确定图中的输入变量,并使输出功能为 F(A,B,C,D)=m(6,7,12,13)。00011110001011111101ABCDF&=1FABBC思考第第3章章 硬件描述

19、语言基础硬件描述语言基础3.9 指出下列Verilog HDL描述中的错误,并改为正确的描述。module (a,b,c,f) input a,b,c; output f; wire w1; always (a or b) w1=ab f4b1001) begin out=4b0000; err=1;end else begin out=in+4b0011;err=0; endendmodule(2)该电路的输入是4位二进制码,输出为4位循环码。分析命题:设输入为B3B2B1B0,输出为G3G2G1G0,根据第1章公式(1.11),有G0=B1B0 ,G1=B2B1,G2=B3B2,G3=B3

20、。module My_B_G ( B, G ) ; input 3:0 B ; output 3:0 G ; reg 3:0 G ; always ( B ) begin G3=B3 ; G2=B3B2 ; G1=B2B1 ; G0=B1B0 ; endendmodule(3)该电路的输入是8421码,输出为2421码。分析命题:由第1章表1.4可见,前5个码相同,后5个码,加6。同样,增加err,控制输入的伪码。module My8421_2421 (in, out, err) ; input 3:0 in ; output 3:0 out ; output err ; reg 3:0 ou

21、t ; reg err ; always ( in ) if (in4b1001) begin out=0; err=1; end else if (in40100) begin out=in+4b0110; err=0; end else begin out=in ; err=0; endendmodule3.14 编写完整的可综合逻辑模块,分别用门级结构描述、数据流描述和行为描述,描述图示电路。/门级结构module menji(a,b,c,d,f); input a,b,c,d; output f ; wire w1,w2; nand u1(w1,a,b); and u2(w2,b,c,

22、d); or u3(f,w1,w2);endmodule&1FABCDw1w2/数据流描述module menji(a,b,c,d,f); input a,b,c,d; output f ; assign f = (a&b)|(b&c&d);endmodule/行为描述module menji(a,b,c,d,f); input a,b,c,d; output f ; reg f ; always (a or b or c or d) f = (a&b)|(b&c&d);endmodule第第4章章 组合电路的逻辑分析与设计组合电路的逻辑分析与设计4.1 分析图习4.1所示电路的逻辑功能。(1

23、)根据电路写出表达式(注意变量顺序)G3=B3G2=B3B2 G1=B2B1 G0=B1B0 (2)列真值表B3 B2 B1 B0G3 G2 G1 G000000000000100010010001100110010010001100101011101100101011101001000110010011101101011111011111011001010110110111110100111111000(3)逻辑功能:将输入的4位二进制码 转换成4位格雷码输出。4.2 写出图习4.2所示电路的输出表达式,说明其功能。分析:电路特点,均为或非门,表达式应是或非形式。功能:两变量同或运算电路。4

24、.3 写出图习4.3所示电路的输出表达式Y1、Y2,列真值表并说明功能。Y1=ABCY2=AB+(AB)CA B CY1 Y20000 00011 00101 00110 11001 01010 11100 11111 1功能:若将A、B作为两个加数,C作为低端进位,则电路实现全加器的功能,Y1是本地和的输出,Y2是向上进位输出。4.4 写出图习4.4所示电路的输出表达式,并判断能否化简,若能,则化简之, 且画出用最少与非门实现的逻辑图。电路图,略调整尾因子,共享4.5 测得某组合电路输入A、B、C及输出F之间对应的波形图如图习4.5所 示。试写出F的表达式,并分析F所实现的逻辑功能。分析题意

25、:标定波形图上的输入状态组合区间,根据输出为1时对应的输入状态组合,可直接写出最小项表达式,再作真值表,分析功能。F(A,B,C) = m(1,2,4,7)A B CF00000011010101101001101011001111功能:三变量检奇电路4.6 分析图习4.6所示多功能运算电路输出信号F与变量A、B的逻辑关系。 如将图中S3、S2、S1、S0作为输入控制信号,随着它们的取值变化, 可得到F关于A、B的不同函数关系,请用列真值表的方法进行说明。解:列出表达式,将S3、S2、S1、S0的各种组合代入,整理,可得16个F关于A、B的函数。S3 S2 S1 S0F(A ,B)000000

26、0100100011010001010110011110001001101010111100110111101111表中,F(A,B) 略4.9 根据图习4.5的波形,建立Verilog HDL的行为模型。A B CF00000011010101101001101011001111列真值表,用case语句建模。module example_4_9 (a,b,c,f) ; input a,b,c ; output f ; reg f ; always (a or b or c) case (a,b,c) 3b001: f=1; 3b010: f=1; 3b100: f=1; 3b111: f=1

27、; default : f=0; endcaseendmodule4.10 建立与图习4.6对应的Verilog HDL数据流描述模型。电路的逻辑表达式w1 w2 w3 w4 四个与项module My4_1 (A, B, S, F) ;input A, B ;input 3:0 S ;output F ;wire w1,w2,w3,w4;assign w1= (A)&(B)&S0 ;assign w2= (A)&B&S1 ;assign w3= A&(B)&S2 ;assign w4= A&B&S3 ;assign F=w1|w2|w3|w4 ;endmodule4.11 采用Verilog

28、 HDL分别描述如下逻辑功能:(1)四变量的非一致电路分析命题:当四个变量取值相同(0000,1111)时,输出0;否则输出1。module examp_1(in, f) ;input 4:1 in ;output f ;reg f ;always (in)if (in= =4b0000 | in= =4b1111) f=0 ;else f=1;endmodule(2)五变量中有奇数个1分析:根据异或运算的特点,可用规约运算直接描述。module example_2 (in , f) ; input 5:1 in ; output f ; assign f = in ;endmodule(3)

29、七人多数表决电路书中例3.14下面为另一种描述:module example_3(a,b,c,d,e,f,g, pass) ;input a,b,c,d,e,f,g ;output pass ;reg pass ;reg 2:0 temp ;always (a or b or c or d or e or f or g)begintemp=0 ;temp=a+b+c+d+e+f+g ;if (temp=4) pass=1 ;else pass=0 ;endendmodule(4)三变量一致电路分析题意:取值相同(000,111),输出1;否则输出0。module examp_1(in, f)

30、;input 3:1 in ;output f ;reg f ;always (in)if (in= =4b000 | in= =4b111) f=1 ;else f=0;endmodule还可采用case语句描述。4.12 某组合电路有A、B、C、D四个输入,它的三个输出具有下列功能: (1)当输入中间没有1,F1输出为1; (2)当输入中间有两个1,F2输出为1; (3)当输入中间有奇数个1,F3输出为1。 试用Verilog HDL 建模。分析:可建真值表,然后在always中用case描述。下面是一种数据流描述。module example_4_12 (a,b,c,d,f1,f2,f3

31、) ; input a,b,c,d ; output f1,f2,f3 ; wire 2:0 w1 ; assign w1=a+b+c+d ; assign f1 = (w1= =0) ? 1 : 0 ; assign f2 = (w1= =2) ? 1 : 0 ; assign f3 = a,b,c,d ;endmodule仿真验证波形4.13 试为某水坝设计一个水位报警控制器,设水位高度用4位二进制数提供。当水位上升到8米时,白指示灯开始亮;当水位上升到10米时,黄指示灯开始亮;当水位上升到12米时,红指示灯开始亮,其他灯灭;水位不可能上升到14米。采用Verilog HDL建模。建真值表

32、,用case描述。in3:0whiteyellowred000000000001110001000100100110010101101011110110000111010011110ddd1111dddmodule alertor (in,w,y,r) ; input 3:0 in ; output w,y,r ; reg w,y,r ; always (in) case (in) 4b1000 : w,y,r=3b100 ; 4b1001 : w,y,r=3b100 ; 4b1010 : w,y,r=3b110 ; 4b1011 : w,y,r=3b110 ; 4b1100 : w,y,r=

33、3b001 ; 4b1101 : w,y,r=3b001 ; default : w,y,r=3b000 ; endcaseendmodule 4.14 举重比赛有三个裁判,一个是主裁判A,两个是副裁判B和C。杠铃完全举上的裁决由每个裁判按一下自己面前的按钮来决定。只有两个以上裁判(其中必须有主裁判)判明成功时,表示成功的灯才亮。试用Verilog HDL建模。module lift (a,b,c, good) ; input a,b,c ; output good ; reg good ; always ( a or b or c) if (a= =0) good=0 ; else if (

34、 (b= =1) | (c= =1) ) good=1 ; else good=0 ;endmodule 1&A2 A1 A0 A7 A4 A5 A6 A34.15 由74LS138译码器及逻辑门构成的组合逻辑电路如图习4.7所示,其中输入信号A7A0为地址变量。试写出译码器各位输出有效时所对应的十六进制地址编码。此例说明,当采用本电路控制后续电路时,占用A7A0提供的256个地址空间中的8个地址68H6FH。根据使能端的特性,要求电路工作时,A7=A4=0;A5=A6=1;A3=1。此时,A2A1A0=000,/Y0有效; A2A1A0=111,/Y7有效。A7A6A5A4A3 A2A1A0

35、十六进制输出有效01101 00068/Y001101 00169/Y101101 0106A/Y201101 0116B/Y301101 1006C/Y401101 1016D/Y501101 1106E/Y601101 1116F/Y74.16 分析图习4.8所示由74LS138译码器及逻辑门构成的组合电路的逻辑功能。分析:使能端G G2AG2B=100,电路工作,有/Yi= mi 。写表达式:Ai Bi CiSiJi0000000111010110110110010101001100011111功能:Ai为被减数;Bi为减数;Ci为低端借位;则电路完成全减器逻辑功能,Si为本地差,Ji为

36、向上借位。4.17 在传统MSI集成电路器件中,典型的数据选择器除了74LS151(八选一)之外,还有一个74LS153,它是一个具有共用控制选择输入端、独立使能端的双4选1数据选择器。习表4.1和习表4.2是其功能表,试画出74LS153的逻辑符号图并用Verilog HDL对其进行建模。习表4.1 74LS153功能表(1)输 入输 出/E0 X2 X1Y01 d d0 0 00 0 10 1 00 1 10a0a1a2a3习表4.2 74LS153功能表(2)输 入输 出/E1 X2 X1Y11 d d0 0 00 0 10 1 00 1 10b0b1b2b3分析题意和功能表,分析题意和

37、功能表,可画出逻辑符号。可画出逻辑符号。x2x1E0a0a1a2 Y0a3E1b0b1 Y1b2b3module my_153(x,e0,e1,a,b,y0,y1); input 1:0 x; input 3:0 a,b; input e0,e1; output y0,y1; reg y0,y1; always (x,e0,a) if (e0= =1) y0=0; else case(x) 0: y0=a0; 1: y0=a1; 2: y0=a2; 3: y0=a3; endcase always (x,e1,b) if (e1= =1) y1=0; else case(x) 0: y1=b0

38、; 1: y1=b1; 2: y1=b2; 3: y1=b3; endcaseendmodule4.18 写出图习4.9所示电路输出F的逻辑表达式,并求其最简与或式、或与式。分析:该电路由8选1器件74LS151构成,可根据定义直接写出表达式,作卡诺图,求最简表达式。000111100011011111111011ABCDF000111100011011111111011ABCDF4.19 写出图习4.10所示电路的输出F(A,B,C)的逻辑表达式,并分析其实现的逻辑功能。分析:通过高位变量A将两个4选1级联扩展为一个8选1,且数据输入端均为逻辑常量,故可直接列出真值表,并写出表达式、分析功能

39、。A B CF00000010010001111000101111011111功能:三变量多数为1检测电路。 或 三人多数表决电路 或 三变量1多电路4.20 某组合电路如图习4.11所示,当输入X3X2X1X0为2421码时,分析电路实现的逻辑功能。解:电路由四位二进制加法器构成,即 S3S2S1S0=A3A2A1A0+B3B2B1B0+CI可列表计算、分析A3A2A1A0(X3X2X1X0)B3B2B1B0(X3X3X31)S3S2S1S0(F3F2F1F0)000000110011000100110100001000110101001100110110010000110111101111

40、011000110011011001110111011010111011011011111111011100功能:当输入X3X2X1X0为2421码时,电路输出为余3码。4.21 分析图习4.12所示电路实现的代码转换功能。解:该电路由四位二进制加法器和逻辑门组成,A3A2A1A0加载8421码(X3X2X1X0)输入,B3B2B1B0加载0WW0,当W=0时,电路输出为A3A2A1A0+0000;当W=1时,电路输出为A3A2A1A0+0110。而W又是X3X2X1X0的函数。可列表计算、分析。X3X2X1X0WB3B2B1B0Y3Y2Y1Y0000000000000000010000000

41、0100100000000100011000000011010000000010001011011010110110101101100011110110110110001011011101001101101111W=X3+X2X1+X2X0结论:将8421码转换为2421码4.22 选择正确答案。设b1、b2、b3、b4构成四位二进制码,若电路采用奇校验,则校验位的逻辑表达式为 。解:奇校验的含义,当信息位中1的个数为奇数时,校验位添0;当信息位中1的个数为偶数时,校验位添1。 信息位中含1的奇偶性,可用异或逻辑获得,因此,答案应在b、d选项中确定。 进一步分析,可知b项符合题意要求。4.23

42、 用逻辑代数法判断图习4.13所示电路是否存在逻辑险象。由电路得到函数式A、B、C、D均以原变量和反变量形式出现在函数式中,符合竞争条件。研究A :当BCD=001时,有 ,临界竞争,存在险象。研究B:ACD的组合,均无 ,非临界竞争,无险象。研究D :当ABC=111时,有 ,临界竞争,存在险象。研究C:ABD的组合,均无 ,非临界竞争,无险象。4.24 用最少的与非门实现下列函数,要求电路不能存在逻辑险象。分析:借助卡诺图,运用禁止逻辑或增加冗余项。 00 01 11 1001111111ABCF1加冗余项加3个冗余项分析:变换与非式后,共需10个与非门。采用禁止逻辑分析:变换与非式后,只

43、需6个与非门。(2)F2=m4(0,1,3,6,7,8,9,11,14,15)00011110001101111111111011ABCDF2用7个与非门禁止逻辑用6个与非门(3) F3=m4(2,6,8,9,11,12,14)00011110001101111110111ABCDF3转换与非式后,11个与非门禁止逻辑7个与非门4.25 采用Verilog HDL,分别完成下列逻辑功能的描述。(1)低有效使能的4位四选一;/ 低有效使能 n_en;选择控制输入sel,2位;/ 数据输入in0、in1、in2、in3均4位;/数据输出out,4位。module select_4_1(n_en,

44、sel, in0, in1, in2, in3, out); input n_en ; input 2:1 sel ; input 4:1 in0, in1, in2, in3 ; output 4:1 out ; reg 4:1 out ; always (n_en or sel or in0 or in1 or in2 or in3) if (n_en= =1) out=0 ; else case (sel) 2b00 : out=in0 ; 2b01 : out=in1 ; 2b10 : out=in2 ; 2b11 : out=in3 ; endcaseendmodule修改,可建n位

45、四选一(2)低有效使能且具有编码有效输出的4-2优先权编码器。分析:理解命题,建立框图;应在always用if_else描述。优先权编码器n_enabcd高低n_errcode1code0module you_4_2 (n_en,a,b,c,d,n_err,code); input n_en, a, b, c ,d ; output n_err ; output 1:0 code ; reg n_err ; reg 1:0 code ; always (n_en or a or b or c or d) if (n_en= =1) n_err,code=3b000 ; else if (a)

46、n_err,code=3b100 ; else if (b) n_err,code=3b101 ; else if (c) n_err,code=3b110 ; else if (d) n_err,code=3b111 ; else n_err,code=3b000 ;endmodule(3)高有效使能且输出高有效的38译码器。/ 描述时,应注意信号的有效级。module decoder_3_8 (en, in, out) ; input en ; input 3:1 in ; output 7:0 out ; reg 7:0 out ; always (en or in) if (en= =

47、0) out=8b00000000 ; else case (in) 3b000 : out=8b00000001 ; 3b001 : out=8b00000010 ; 3b010 : out=8b00000100 ; 3b011 : out=8b00001000 ; 3b100 : out=8b00010000 ; 3b101 : out=8b00100000 ; 3b110 : out=8b01000000 ; 3b111 : out=8b10000000 ; endcaseendmodule4.26 采用Verilog HDL,分别建立下列代码转换电路的模型:分析:(1)(7)均围绕BC

48、D码之间的转换,可建一通用模型。module BCD_bcd (in,out) ; parameter s0=4b0000,s1=4b0001,s2=4b0010,s3=4b0011,s4=4b0100, s5=4b0101,s6=4b0110,s7=4b0111,s8=4b1000,s9=4b1001; parameter y0=4b0011,y1=4b0100,y2=4b0101,y3=4b0110,y4=4b0111, y5=4b1000,y6=4b1001,y7=4b1010,y8=4b1011,y9=4b1100; input 3:0 in ; output 3:0 out ; re

49、g 3:0 out ; always ( in ) case (in) s0 : out=y0 ; s1 : out=y1 ; s2 : out=y2 ; s3 : out=y3 ; s4 : out=y4 ; s5: out=y5 ; s6 : out=y6 ; s7 : out=y7 ; s8 : out=y8 ; s9 : out=y9 ; default : out=4bzzzz ; endcaseendmodules0-s9定义输入BCD码;y0-y9定义输出BCD码;此为,8421余3修改s0-s9和y0-y9,方便实现(2)(7)下面为各命题的单独描述(1)8421码余3码余3码

50、=8421码+40011module my8421_yu3 (in,out) ; input 3:0 in ; output 3:0 out ; assign out = in + 4b0011 ;endmodule(2)余3码 8421码8421码=余3码 40011module myyu3_8421 (in,out) ; input 3:0 in ; output 3:0 out ; assign out = in 4b0011 ;endmodule(3)2421码余3码前5个,加40011;后5个,减40011。module my2421_yu3 (in,out) ; input 3:0

51、 in ; output 3:0 out ; reg 3:0 out ; always (in) if (in4b0101) out = in + 4b0011 ; else out = in 4b0011 ;endmodule注意:本描述没有考虑输入出现2421伪码的情况。(4)余3 码 2421码前5个,减40011;后5个,加40011。module myyu3_2421 (in,out) ; input 3:0 in ; output 3:0 out ; reg 3:0 out ; always (in) if (in4b1000) out = in 4b0011 ; else out

52、 = in + 4b0011 ;endmodule注意:本描述没有考虑输入出现余3码伪码的情况。(5)8421码转换成2421码前5个,不变;后5个,加40110。module my8421_2421 (in,out) ; input 3:0 in ; output 3:0 out ; reg 3:0 out ; always (in) if (in4b0101) out = in ; else out = in + 4b0110 ;endmodule注意:本描述没有考虑输入出现8421码伪码的情况。(6)2421码转换成8421码前5个,不变;后5个,减40110。module my2421

53、_8421 (in,out) ; input 3:0 in ; output 3:0 out ; reg 3:0 out ; always (in) if (in9时,报错。试用Verilog HDL建立模型。分析:可用case语句,也可用if_else语句。特别注意报错信号的正确赋值。module example_428 (x, y, err) ; input 3:0 x ; output 3:0 y ; output err ; reg 3:0 y ; reg err ; always (x) if (x=4) begin y=x+1 ; err=0 ; end else if (x=9)

54、 begin y=x1 ; err=0 ; end else err=1 ;endmodule分别用74LS138、74LS153、74LS151实现下列逻辑函数。分析:用译码器实现逻辑函数,和最小项表达式m ( )对应; 用多路选择器实现逻辑函数,和标准与或表达式miDi对应。(1)Y1=m3(1,3,4,7)138译码器有:所以001E2AE2BGCBAY0Y1Y2Y3Y4Y5Y6Y7&Y1/Y0/Y7ABC以下为:补充思考题,供参考用153实现Y1,可用高位变量A控制使能端,将两个4选1扩展成8选1;(略)也可用153,即4选1实现,此时应写出标准与或式(无需化简),用高位变量A、B作为选择控制变量,然后确定其他变量组合与数据输入端的关系,最后画图。数据输入端 a0 a1 a2 a374LS153EX1X0a0a1a2a30ABCCYY1用8选1的74LS151实现,比较容易。函数的3个变量顺序连接到数据选择器的控制变量输入端,函数包含最小项对应的数据端接1,其他接0,即可。数据输入端 a1=a3=a4=a7=1 ,其他 074LS151EX2X1X0a0a1a2a3a4a5a6a70ABCYY101011001(2)Y2=M3(0,1,2,4)将最大项表达式转换成Y2=m3(3,5,6,7),实现方法同上。

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 医学/心理学 > 基础医学

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号