正文描述:《101汇总程序题》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、1.用verilog中case语句设计一个3-8译码器答案:moduledecode3-8(G1,Y,G2,A,G3);inputG1,G2,G3;wireG1,G2,G3;input[2:0]A;wire[2:0]A;output[7:0]Y;reg[7:0]Y;alway@(A,G1,G2,G3)beginS<=G2!G3;if(G1==0)Y<=8’b11111111;elsecase(A)3’b001:Y=8’b11111101;3’b010:Y=8’b11111011;3’b011:Y=8’b11110111;3’b100:Y=8’b11101111;3’b101
2、:Y=8’b11011111;3’b110:Y=8’b10111111;3’b111:Y=8’b01111111;default:Y=8’bxxxxxxxx;endcaseendendmodule2.用verilog语言编写一个二进制半减器答案:modulesuber(x,y,diff,out);inputx,y;outputdiff,out;assigndiff=x^y;assignout=(~x)&y;endmodule3.用verilog语言编写一个4选1多路选择器答案:modulemux(A,B,C,D,S0,S1,S2,S3,Y);outputY;inputA,B
3、,C,D;inputS0,S1,S2,S3;regY;always@(A,B,C,S0,S1,S2,S3)beginif(S0==0)Y=A;elseif(S1==0)Y=B;elseif(S2==0)Y=C;elseif(S3==0)Y=D;endendmodule4.用verilog语言设计数据比较器答案:modulecompare(x,y,xgy,xsy,xey);input[width-1:0]x,y;outputxgy,xsy,xey;regxgy,xsy,xey;paramerwidth=8;always@(xory)beginif(x==y)xey=0;els
4、exey=0;if(x>y)xgy=1;elsexgy=0;if(x
5、)(-----------------)(-----------------)(-----------------)(-----------------)(-----------------)(-----------------)(-----------------)endmodule答案:if(OE)Q<='bz;elseif(G)Q<=D;elseQ<=Q;7.自己设计一款数据选择器(输入端分别是D0——D7,输出端为Y)moduleshujuxuanzeqi(A,G,D0,D1,D2,D3,D4,D5,D6,D7,Y);input[2:0]A;wire[2:0]A;i
6、nputG;wireG;inputD0;wireD0;inputD1;wireD1;inputD2;wireD2;inputD3;wireD3;inputD4;wireD4;inputD5;wireD5;inputD6;wireD6;inputD7;wireD7;outputY;regY;always@(*)beginif(G==1)case(A)(-----------------)(-----------------)(-----------------)(-----------------)(-----------------)(-----------------)(
7、-----------------)(-----------------)endcaseelseY<=0;endendmodule答案:3'b000:Y<=D0;3'b001:Y<=D1;3'b010:Y<=D2;3'b011:Y<=D3;3'b100:Y<=D4;3'b101:Y<=D5;3'b110:Y<=D6;3'b111:Y<=D7;8.自己设计一款数据寄存器(输入端为8位输入端Q,输出端为8位输出端D)modulejicunqi(D,Q,clk,rst);input[7:0]D;inputrst,clk;
显示全部收起