资源描述:
《采用vhdl层次化文件设计一个四位全减器》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、采用VHDL层次化文件设计一个四位全减器一、实训目的1.巩固VHDL层次化文件设计方法。2.培养应用VHDL层次化文件设计法的技能。二、实训器材计算机与QuartusⅡ工具软件。三、实训指导(一)实训原理4位二进制减法器由4个全减器构成,而全减器又由一个半减器和一个或门构成,半减器的真值表如表4-1所示:表4-1半减器的真值表输入输出a1b1s1c10000011110101100半减器的逻辑表达式为:s1=NOT(a1XOR(NOTb1))c1=(NOTa1)ANDb1一位全减器的真值表如表4-2所示:表4-2一位全减器的真值表c_ini1i2fs
2、c_out0000000111010100110010011101011100011111(二)实训步骤1.电路模块划分根据算法分析,4位二进制减法器可由4个全减器构成,画出其原理方框图。全减器的原理方框图如图4-1所示。而每个全减器又可划分为一个半减器和一个或门这两个更小的模块,画出其原理方框图。4位二进制减法器的原理方框图如图4-2所示。图4-1一位全减器原理方框图图4-24位二进制减法器原理框图2.设计底层设计文件(1)设计半减器文件halfsub.vhd。(2)设计或门电路文件orgate.vhd。(3)设计全减器电路文件fullsub.vh
3、d,其中把半减器和或门电路文件作为元件调用。3.设计顶层设计文件设计顶层设计文件sub4.vhd,其中把全减器文件作为元件调用。VHDL代码如下:halfsub.vhd文件代码如下:ENTITYhalfsubISPORT(a1,b1:INBIT;s1,c1:OUTBIT);ENDhalfsub;ARCHITECTUREaOFhalfsubISBEGINPROCESS(a1,b1)BEGINs1<=NOT(a1XOR(NOTb1))AFTER10ns;c1<=(NOTa1)ANDb1AFTER10ns;ENDPROCESS;ENDa;orgate.vh
4、d文件代码如下:ENTITYorgateISPORT(a,b:INBIT;o:OUTBIT);ENDorgate;ARCHITECTUREaOForgateISBEGINo<=aORb;ENDa;fullsub.vhd文件代码如下:ENTITYfullsubISPORT(i1,i2,c_in:INBIT;fs,c_out:OUTBIT);ENDfullsub;ARCHITECTUREaOFfullsubISSIGNALtemp_s,temp_c1,temp_c2:BIT;COMPONENThalfsubPORT(a1,b1:INBIT;s1,c1:O
5、UTBIT);ENDCOMPONENT;COMPONENTorgatePORT(a,b:INBIT;o:OUTBIT);ENDCOMPONENT;BEGINU0:halfsubPORTMAP(i1,i2,temp_s,temp_c1);U1:halfsubPORTMAP(temp_s,c_in,fs,temp_c2);U2:orgatePORTMAP(temp_c1,temp_c2,c_out);ENDa;sub4.vhd文件代码如下:ENTITYsub4ISPORT(a,b:INBIT_VECTOR(3DOWNTO0);cin:INBIT;fs:O
6、UTBIT_VECTOR(3DOWNTO0);cout:OUTBIT);ENDsub4;ARCHITECTUREaOFsub4ISSIGNALtemp_co0,temp_co1,temp_co2:BIT;COMPONENTfullsubISPORT(i1,i2,c_in:INBIT;fs,c_out:OUTBIT);ENDCOMPONENT;BEGINU0:fullsubPORTMAP(a(0),b(0),cin,fs(0),temp_co0);U1:fullsubPORTMAP(a(1),b(1),temp_co0,fs(1),temp_co1);
7、U2:fullsubPORTMAP(a(2),b(2),temp_co1,fs(2),temp_co2);U3:fullsubPORTMAP(a(3),b(3),temp_co2,fs(3),cout);ENDa;1.编译顶层设计文件把以上各个模块的VHDL设计文件放入同一个文件夹中,以顶层文件建立工程,直接编译顶层文件同时也就编译各个底层模块文件。若有错误,则加以纠正,直到通过为止。1.仿真顶层设计文件最后,仿真顶层文件,若发现功能错误,应检查其原因,并加以纠正。4位二进制减法器的仿真图如图4-3所示:图4-34位二进制减法器仿真波形图广州珍珠岩,
8、广州珍珠岩厂http://www.tli020.comCe57uICIJeu8