资源描述:
《实验二 构造基础芯片.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、实验二构造基础芯片实验二构造基础芯片l实验目的:学会用已存在的芯片构造自己想要的芯片,并与比较文件比较验证正确性。1.实现Not芯片2.实现And芯片3.实现Or芯片4.实现Xor芯片5.实现Mux芯片6.实现DMux芯片7.实现Not16芯片8.实现And16芯片9.实现Or16芯片10.实现Mux16芯片11.实现Or8Way芯片12.实现Mux4Way16芯片13.实现Mux8Way16芯片14.实现DMux4Way芯片15.实现DMux8Way芯片l实验器材:硬件:安装了JDK的PC机一台软件:1.软件包tecs-software-suite-2.5.z
2、ip中的硬件仿真器2.实验二测试包l实验步骤:在开始构建芯片之前,你所有的只是一个Nand门,其布尔函数和功能如下:Nand门真值表abNand(a,b)001011101110Nand芯片API芯片名:Nand输入:a,b输出:out功能:如果a=b=1,则out=0。否则out=1。16实验二构造基础芯片1.实现Not芯片Not芯片API芯片名:Not输入:in输出:out功能:如果in=0,则out=1。否则out=0。参考实现原理图:参考实现代码:CHIPNot{INin;OUTout;PARTS:Nand(a=in,b=in,out=out);}16实
3、验二构造基础芯片2.实现And芯片And芯片API芯片名:And输入:a,b输出:out功能:如果a=b=1,则out=1。否则out=0。参考实现原理图:参考实现代码:CHIPAnd{INa,b;OUTout;PARTS:Nand(a=a,b=b,out=tp1);Nand(a=tp1,b=tp1,out=out);}16实验二构造基础芯片3.实现Or芯片Or芯片API芯片名:Or输入:a,b输出:out功能:如果a=b=0,则out=0。否则out=1。参考实现原理图:参考实现代码:CHIPOr{INa,b;OUTout;PARTS:Nand(a=a,b=a
4、,out=tp1);Nand(a=b,b=b,out=tp2);Nand(a=tp1,b=tp2,out=out);}16实验二构造基础芯片4.实现Xor芯片Xor芯片API芯片名:Xor输入:a,b输出:out功能:如果a!=b,则out=1。否则out=0。参考实现原理图:参考实现代码:CHIPXor{INa,b;OUTout;PARTS:Not(in=b,out=notb);Not(in=a,out=nota);And(a=a,b=notb,out=w1);And(a=nota,b=b,out=w2);Or(a=w1,b=w2,out=out);}16实验
5、二构造基础芯片5.实现Mux芯片Mux芯片API芯片名:Mux输入:a,b,sel输出:out功能:如果sel=0,则out=a。否则out=b。参考实现原理图:参考实现代码:CHIPMux{INa,b,sel;OUTout;PARTS:Not(in=sel,out=ns);And(a=a,b=ns,out=tp1);And(a=sel,b=b,out=tp2);Or(a=tp1,b=tp2,out=out);}16实验二构造基础芯片6.实现DMux芯片DMux芯片API芯片名:DMux输入:in,sel输出:a,b功能:如果sel=0,则{a=in,b=0}。
6、否则out={a=0,b=in}。参考实现原理图:参考实现代码:CHIPDMux{INin,sel;OUTa,b;PARTS:Not(in=sel,out=ns);And(a=in,b=ns,out=a);And(a=sel,b=in,out=b);}16实验二构造基础芯片7.实现Not16芯片Not16芯片API芯片名:Not16输入:in[16]//16-bit管脚输出:out[16]功能:fori=0…15out[i]=Not(in[i])参考实现原理图:参考实现代码:CHIPNot16{INin[16];OUTout[16];PARTS:Not(in=i
7、n[0],out=out[0]);Not(in=in[1],out=out[1]);Not(in=in[2],out=out[2]);Not(in=in[3],out=out[3]);Not(in=in[4],out=out[4]);Not(in=in[5],out=out[5]);Not(in=in[6],out=out[6]);Not(in=in[7],out=out[7]);Not(in=in[8],out=out[8]);Not(in=in[9],out=out[9]);Not(in=in[10],out=out[10]);Not(in=in[11],o
8、ut=out[11]);