资源描述:
《EDA 与数字系统设计 第2版 教学课件 作者 李国丽 等编著 CH3ch3-4.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第三章VerilogHDL硬件描述语言3.1VerilogHDL概述3.2VerilogHDL语言要素3.3VerilogHDL基本语句3.4VerilogHDL门元件和结构描述3.5仿真验证3.6可综合性描述3.7设计实例3.4VerilogHDL门元件和结构描述3.4.1门元件3.4.2门级结构描述举例3.4.3VerilogHDL程序设计的描述方式3.4.1门元件1多输入门(andandororxorxor)2多输出门(bufot)3三态门(bufif0bufif1otif0otif1)4门延时1多输入门(andand
2、ororxorxor)多输入门的表示方式为:门名单元名(输出,输入列表)例如:orA1(out,int1,int2);表示该门类型为或门,单元名为A1,一个输出端口,两个输入端口。1多输入门(andandororxorxor)门名是以上六种多输入门之一。多输入门的共同点:只有一个输出端口,有一个或多个输入端口。第一个端口是输出,其它端口是输入。单元名可以省略,例如xor(y,a1,a2)一条语句可以有多个相同类型的单元。anda1(m1,a,b),a2(m2,b,cin),a3(m3,a,cin);and01xznand01xZ0
3、000001111101xx110xxx0xxxx1xxxz0xxxz1xxx(a)与门(b)与非门or01xznor01xZ001xx010xX1111110000xx1xxxx0xxzx1xxzx0xx(c)或门(d)或非门xor01xzxnor01xz001xx010xx110xx101xxxxxxxxxxxxzxxxxzxxxx(e)异或门(f)异或非门真值表的第一行和第一列的各项分别表示两个不同输入端的输入,其它项为输出端的输出。2多输出门(bufot)多输出门的表示方式为门名单元名(输出列表,输入);例如notB1(out1,out2,int
4、);它表示该门类型为非门,单元名为B1,有两个输出,一个输入。门名是bufot之一。这两种多输出门的共同特点是,只有一个输入,但有一个或多个输出。最后一个端口是输入,其它端口是输出。buf01xznot01xz输出01xx输出10xx(a)缓冲门(b)非门3三态门(bufif0bufif1otif0otif1)三态门的表示方式为门名单元名(输出,数据输入,控制输入);例如,bufif0C1(out,int1,en);它表示该门类型为低电平使能缓冲门,单元名为C1,有一个输出端,一个数据输入端和一个控制输入端。bufif001xzbufif101
5、xZ00zzz0z0zz11zzz1z1zzxxzxxxzxxxzxzxxzzxxx(a)0使能(b)1使能notif001xznotif101xZ01zzz0z1zz10zzz1z0zzxxzxxxzxxxzxzxxzzxxx(c)0使能(d)1使能4门延时信号从门的输入端传输到输出端引起的延时叫做门延时。可以在实例化基本门的同时,进行门延时的定义。定义方式:门(开关)名 延时单元名(输入输出列表);`timescale1ns/100ps门延时门延时由上升延时、下降延时和截止(高阻态)延时组成,因此延时的基本定义形式为#(d1,d2,d3)其中d1表示上升
6、延时,d2表示下降延时,d3表示截止延时。下图是各具体的延时取值。延时定义无延时#(d)#(d1,d2)#(d1,d2,d3)上升延时0dd1d1下降延时0dd2d2转换到x0dmin(d1,d2)min(d1,d2,d3)截止延时0dmin(d1,d2)d3门延时如果没有延时,则门延时默认为0。所有延时以单位时间来表示,而单位时间和实际时间的关系则通过`timescale编译器指令来实现。上升延时表示转换到1的时延;下降延时表示转换到0的时延;截止延时表示转换到z的延时,它通常针对有使能控制的三态门。但是在表示连线延时,截止延时表示的是trireg中电荷的
7、衰减时间。代表经过d3时间后,trireg中的电荷将被释放掉,连线进入不定态。3.4.2门级结构描述举例例3-4-1简单组合电路门级结构描述moduleZNAND(in1,in2,in3,in4,out);inputin1,in2,in3,in4;outputout;wireout1,out2;and#10u1(out1,in1,in2),u2(out2,in3,in4);or#20u3(out,out1,out2);endmodule例3-4-2四选一数据选择电路的门级描述。moduleNUX4_1(Z,D0,D1,D2,D3,S0,S1);outputZ
8、;inputD0,D1,D2,D3,S0,S1;an