



如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
VerilogHDL 一、verilogHDL设计模块的基本结构包括:模块端口定义、I/O声明、信号类型声明、功能描述。一个完整的建模结构如下: Module模块名(端口1,端口2,端口3……); I/O声明; 信号类型声明; 功能描述; Endmodule 说明: ①模块端口定义用来声明设计模块名称及相应的(输入/输出)端口。 ②I/O声明用来声明模块端口定义中各端口数据的流动方向,包括input、output、inout。 ③信号类型声明用来声明设计电路的功能描述中所用的变量的数据类型,常用的有:wire型、reg型、integer型、parameter型。 ④功能描述用来描述设计模块的内部结构和模块端口之间的关系,在电路上相当于器件的内部电路结构。功能描述可以用assign语句、元件例化、always语句块、initial语句块等方法来实现,通常把确定这些设计模块描述的方法称为建模。 用assign语句建模 用assign语句建模的方法较简单,只需要在assign后面再加一个表达式即可。Assign语句一般适合对组合逻辑进行赋值,称为连续赋值方式。 用元件例化方式建模 元件例化方式建模是利用VerilogHDL提供的元件库实现的。 用always块语句建模 Always块语句可以用于设计组合逻辑和时序逻辑,但时序逻辑必须用always语句来建模。 用initial块语句建模 Initial块语句与always语句类似,不过在程序中它只执行一次就结束了。Initial块语句主要用于设计电路的初始化操作和仿真。 二、VerilogHDL的基本词法 1、常数 VerilogHDL中的常数包括数字、未知x和高阻z3种。完整的数字程式为: <位宽>’<进制符号><数字> 2、VerilogHDL数据对象 常量 常量是一个恒定不变的数值,一般在程序前部定义,格式为: Parameter常量名1=表达式,常量名2=表达式,……. 变量 变量是在程序运行时其值可以改变的量,在VerilogHDL中,变量分为网络型和寄存器型两种,网络型变量wire型,寄存器型变量reg型和integer型。Wire型变量在assign语句和元件例化语句中赋值,而reg型变量是在always、initial等过程语句中定义,并通过过程语句赋值。 3、VerilogHDL运算符 算术运算符:+(加)、-(减)、*(乘)、/(除) 逻辑运算符:&&(逻辑与)、||(逻辑或)、!(逻辑非) 位运算:~(按位取反)、&(按位与)、|(按位或)、^(按位异或)、^~(按位同或) 关系运算符:<、>、<=、>= 等值运算符:==、=== 缩减运算符:&(与)、~&(与非)、|(或)、~|(或非)、^(异或)、^~(同或) 移位运算符:》(右移)、《(左移) 条件运算符:?: 位拼接运算符:{} 4、VerilogHDL的基本语句 (1)持续赋值语句 持续赋值语句的关键词是assign,赋值符号是“=”,赋值语句的格式为:assignwire型变量=表达式;“=”两边都应该是wire型。持续赋值语句一般用来描述组合逻辑电路。 (2)过程赋值语句 过程赋值语句有阻塞赋值语句(“=”)和非阻塞赋值语句(“<=”),主要是运用于reg型变量的赋值操作。 注意:非阻塞赋值“<=”不能用于assign持续赋值语句中,而只能用于对寄存器型变量进行赋值,即在always和initial等过程块语句中;阻塞赋值“=”则既能用于assign持续赋值语句中,也能用于initial和always等过程赋值语句中。 (3)块语句 块语句有串行块语句begin-end和并行块语句fork-join。begin-end块内的语句是顺序执行的,而fork-join块内的语句是同时并行执行的。 (4)过程语句 VerilogHDL有两过程语句:initial和always过程块。一个程序模块可以有多个initial和always过程块,它们都是同时执行的。Initial语句不带触发条件,但在程序中只执行一次就结束,多用于初始化和仿真;always过程块通常带有触发条件的,当满足条件时,执行一次always过程块,always语句的格式如下: Always@(敏感信号表达式) 上式的敏感信号可以分为两种类型:一种为边沿敏感型(关键字posedge表示上升沿,negedge表示下降沿),一种为电平敏感型。每个always过程最好只由一种类型的敏感信号来触发,而不要将边沿敏感型和电平敏感型信号列在一起。 (5)条件语句 条件语句有if条件语句和case条件语句两种,它们都是顺序语句。 (6)循环语句 VerilogHDL中用来实现循环的语句有以下四种:forever、repeat、wh

yy****24
实名认证
内容提供者


最近下载
一种胃肠道超声检查助显剂及其制备方法.pdf
201651206021+莫武林+浅析在互联网时代下酒店的营销策略——以湛江民大喜来登酒店为例.doc
201651206021+莫武林+浅析在互联网时代下酒店的营销策略——以湛江民大喜来登酒店为例.doc
用于空间热电转换的耐高温涡轮发电机转子及其装配方法.pdf
用于空间热电转换的耐高温涡轮发电机转子及其装配方法.pdf
用于空间热电转换的耐高温涡轮发电机转子及其装配方法.pdf
用于空间热电转换的耐高温涡轮发电机转子及其装配方法.pdf
用于空间热电转换的耐高温涡轮发电机转子及其装配方法.pdf
用于空间热电转换的耐高温涡轮发电机转子及其装配方法.pdf
论《离骚》诠释史中的“香草”意蕴.docx