欢迎来到天天文库
浏览记录
ID:30945880
大小:176.00 KB
页数:14页
时间:2019-01-04
《集成电路cad复习例题-+解析》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、1、3-8译码器Index方式moduledecoder_index(ini,outl);parameterN=8;parameterlog2N=3;input[log2N-l:0]ini;output[N-l:0]outl;reg[N-l:0]outl;always@(inl)beginoutl=0;outl[inlJ=1'bl;endEndmoduleLOOP方式moduledecoder38_loop(ini,outl);parameterN=8;parameterlog2N=3;input
2、flog2N-l:0]ini;outputfN-l:01outl;reg[N-l:0]outl;integeri;always@(inl)beginfor(i=0;i3、og2N-l:0]P;function[log2N-l:0]priority;input[O:N-1]A;integerI;beginpriority=3?bO;for(1=0;I4、]in;reg[2:0]out;always@(in)beginif(in[7]==l)out=3,111;elseif(in[6]==l)out=3'elseif(in[4]==l)out=3‘elseif(in[2]==l)out=3elseif(in[0]==l)out=3Jbl10;elseif(in[5]==l)0^=3^101;bl00;elseif(in[3]==l)out=3'bOll;bOlO;elseif(in[l]==l)out=3bOOl;bOOO;default:out=5、3,bx;endendmodule3、奇偶校验位产生器moduleparity(even_bit,odd_bit,input_bus);outputeven_bit,odd_bit;input[7:0]input_bus;assigneven_bit=Ainput_bus;//产生偶校验位assignodd_bit二~even_bit;〃产生奇校验位endmodule4、4选1数据选择器第一种方法modulemux(dl,d2,d3,d4,sel,se2,dout);inputdl;inputd26、;inputd3;inputd4;inputsei;inputse2;outputdout;regdout;always@(dlord2ord3ord4orseiorse2)case({sel5se2})2'b00:dout=d1;2'b01:dout=d2;2'blO:dout=d3;2'bl1:dout=d4;endcaseendmodule第二种方法modulemux(d1,d2,d3,d4,se1,se2,dout);inputdl;inputd2;inputd3;inputd4;inpu7、tsei;inputse2;outputdout;regdout;always@(dlord2ord3ord4orseiorse2)if(!sel)beginif(!se2)dout=dl;elseclout=d2;endelsebeginif(!se2)dout=d3;elsedout=d4;endendmodule第三种方法modulese(d1,d2,d3,d4,sel,se2,dout);inputdl;inputd2;inputd3;inputd4;inputsei;inputse2;o8、utputdout;regdout;always@(dlord2ord3orc!4orseiorse2)assigndout=sel?se2?d4:d3:se2?d2:d1;endmodule笫四种方法modulemux4_l(out,in0,in1,in2,in3,sel);outputout;inputinO,inl,in2Jn3;input[l:0]sei;regout;always@(inOoriniorin2orin3orsei)//敏感信号列表case(sel)2'b0
3、og2N-l:0]P;function[log2N-l:0]priority;input[O:N-1]A;integerI;beginpriority=3?bO;for(1=0;I4、]in;reg[2:0]out;always@(in)beginif(in[7]==l)out=3,111;elseif(in[6]==l)out=3'elseif(in[4]==l)out=3‘elseif(in[2]==l)out=3elseif(in[0]==l)out=3Jbl10;elseif(in[5]==l)0^=3^101;bl00;elseif(in[3]==l)out=3'bOll;bOlO;elseif(in[l]==l)out=3bOOl;bOOO;default:out=5、3,bx;endendmodule3、奇偶校验位产生器moduleparity(even_bit,odd_bit,input_bus);outputeven_bit,odd_bit;input[7:0]input_bus;assigneven_bit=Ainput_bus;//产生偶校验位assignodd_bit二~even_bit;〃产生奇校验位endmodule4、4选1数据选择器第一种方法modulemux(dl,d2,d3,d4,sel,se2,dout);inputdl;inputd26、;inputd3;inputd4;inputsei;inputse2;outputdout;regdout;always@(dlord2ord3ord4orseiorse2)case({sel5se2})2'b00:dout=d1;2'b01:dout=d2;2'blO:dout=d3;2'bl1:dout=d4;endcaseendmodule第二种方法modulemux(d1,d2,d3,d4,se1,se2,dout);inputdl;inputd2;inputd3;inputd4;inpu7、tsei;inputse2;outputdout;regdout;always@(dlord2ord3ord4orseiorse2)if(!sel)beginif(!se2)dout=dl;elseclout=d2;endelsebeginif(!se2)dout=d3;elsedout=d4;endendmodule第三种方法modulese(d1,d2,d3,d4,sel,se2,dout);inputdl;inputd2;inputd3;inputd4;inputsei;inputse2;o8、utputdout;regdout;always@(dlord2ord3orc!4orseiorse2)assigndout=sel?se2?d4:d3:se2?d2:d1;endmodule笫四种方法modulemux4_l(out,in0,in1,in2,in3,sel);outputout;inputinO,inl,in2Jn3;input[l:0]sei;regout;always@(inOoriniorin2orin3orsei)//敏感信号列表case(sel)2'b0
4、]in;reg[2:0]out;always@(in)beginif(in[7]==l)out=3,111;elseif(in[6]==l)out=3'elseif(in[4]==l)out=3‘elseif(in[2]==l)out=3elseif(in[0]==l)out=3Jbl10;elseif(in[5]==l)0^=3^101;bl00;elseif(in[3]==l)out=3'bOll;bOlO;elseif(in[l]==l)out=3bOOl;bOOO;default:out=
5、3,bx;endendmodule3、奇偶校验位产生器moduleparity(even_bit,odd_bit,input_bus);outputeven_bit,odd_bit;input[7:0]input_bus;assigneven_bit=Ainput_bus;//产生偶校验位assignodd_bit二~even_bit;〃产生奇校验位endmodule4、4选1数据选择器第一种方法modulemux(dl,d2,d3,d4,sel,se2,dout);inputdl;inputd2
6、;inputd3;inputd4;inputsei;inputse2;outputdout;regdout;always@(dlord2ord3ord4orseiorse2)case({sel5se2})2'b00:dout=d1;2'b01:dout=d2;2'blO:dout=d3;2'bl1:dout=d4;endcaseendmodule第二种方法modulemux(d1,d2,d3,d4,se1,se2,dout);inputdl;inputd2;inputd3;inputd4;inpu
7、tsei;inputse2;outputdout;regdout;always@(dlord2ord3ord4orseiorse2)if(!sel)beginif(!se2)dout=dl;elseclout=d2;endelsebeginif(!se2)dout=d3;elsedout=d4;endendmodule第三种方法modulese(d1,d2,d3,d4,sel,se2,dout);inputdl;inputd2;inputd3;inputd4;inputsei;inputse2;o
8、utputdout;regdout;always@(dlord2ord3orc!4orseiorse2)assigndout=sel?se2?d4:d3:se2?d2:d1;endmodule笫四种方法modulemux4_l(out,in0,in1,in2,in3,sel);outputout;inputinO,inl,in2Jn3;input[l:0]sei;regout;always@(inOoriniorin2orin3orsei)//敏感信号列表case(sel)2'b0
此文档下载收益归作者所有