Verilog语言编程基础.ppt
《Verilog语言编程基础.ppt》由会员分享,可在线阅读,更多相关《Verilog语言编程基础.ppt(48页珍藏版)》请在三一办公上搜索。
1、VerilogHDL语言编程基础,大连XXX网络技术有限公司,HDL语言简介,Verilog 中的模块(Module),Verilog语言中常用语句,Verilog语言中阻塞和非阻塞赋值,Verilog语言中常见的错误,Verilog的语言要素,Verilog语言的4大法宝,HDL语言简介,HDL:硬件描述语言(Hardware Description Language)目前通用的 HDL 语言有VHDL和Verilog两种。目前多数 FPGA 厂商都有自己的逻辑综合工具,或者采用第三方的设计综合工具来支持自己的器件开发。这是由于HDL完成的设计具有可移植、易维护、好理解的性能。,HDL语言简
2、介,VHDL语言最初于1981年由美国国防部(DOD)为解决所有电子产品存档而提出了一种统一标准语言,1987年成为IEEE107687标准.1993年后,形成IEEE1164,以解决可综合VHDL描述在不同EDA厂商之间的移植问题,及ASIC/FPGA的门级库描述问题。Verilog语言最早由Gateway设计自动化公司于1981年提出,并提供相应的Verilog仿真器。1985年,仿真器增强版Verilog-XL推出。Cadence公司于1989年收购Gateway公司,并于1990年把Verilog语言推向市场,而保留了Verilog-XL的所有权。1995年,Verilog成为IEEE
3、1364标准。,HDL语言简介,VHDLVerilog 比较:两种语言均可有效地描述RTL级(寄存器传输级),但在行为/系统级,Verilog需要PLI的支持,门级以下级Verilog 则有较大优势。对于两种语言来说,没有一种语言能描述的功能而另一种不能实现的。考虑到目前大多数的ASIC厂家支持Verilog网表,我们今后将主要推行使用 VerilogHDL。,Verilog语言中常用语句,Verilog语言中阻塞和非阻塞赋值,Verilog语言中常见的错误,Verilog的语言要素,Verilog语言的4大法宝,Verilog 中的模块(Module),Verilog中的模块,模块是Veri
4、log 的基本描述单位,用于描述某个设计的功能或结构及其与其他模块通信的外部端口。整个逻辑设计就是通过模块之间的例化(instantiation)来构成一个整体的。逻辑设计的思想体现了自顶向下的设计方法,模块间的例化方法,要求:每个文件只包含一个模块。模块名和文件名保持一致。,模块名,实例名,端口信号映射关系,模块的基本语法结构,module module_name(port_list);Declarations:reg,wire,parameter,input,output,inout,function,task,.Statements:Initial statement Always st
5、atement Module instantiation Gate instantiation UDP instantiation Continuous assignmentendmodule,模块的结构需按上面的顺序进行,声明区用来对信号方向、信号数据类型、函数、任务、参数等进行描述。语句区用来对功能进行描述如:器件调用(Module instantiation)等。,Verilog语言中常用语句,Verilog语言中阻塞和非阻塞赋值,Verilog语言中常见的错误,Verilog语言的4大法宝,Verilog的语言要素,标识符注释格式系统任务和函数编译指令值集合数据类型参数,Verilog
6、的语言要素,Verilog的语言要素标识符,标识符(identifier)用于定义模块名、端口名、信号名等。Verilog HDL 中的标识符(identifier)可以是任意一组字母、数字、$符号和_(下划线)符号的组合,但标识符的第一个字符必须是字母或者下划线。另外,标识符是区分大小写敏感的。以下是标识符的几个例子:Verilog HDL 定义了一系列保留字,叫做关键词,附录A 列出了语言中的所有保留字。注意只有小写的关键词才是保留字。例如,标识符always(这是个关键词)与标识符ALWAYS(非关键词)是不同的。,Verilog的语言要素注释,两种注释的方式:以“/*”符号开始,“*/
7、”结束,在两个符号之间的语句都是注释语句,因此可扩展到多行。如:/*statement1,statement2,.statementn*/以上n个语句都是注释语句。是以/开头的语句,它表示以/开始到本行结束都属于注释语句。,Verilog的语言要素格式,自由的书写格式:Verilog HDL的书写格式是自由的,即一条语句可多行书写;一行可写多个语句。白空(新行、制表符、空格)没有特殊意义。如:input A;input B;与input A;input B;功能是一样的,但是这方面公司有严格的书写规范。,Verilog的语言要素系统任务,以$字符开始的标识符表示系统任务。任务提供了一种封装行为
8、的机制。这种机制可在设计的不同部分被调用。任务可以返回0个或多个值。函数在0时刻执行,即不允许延迟。$d i s p l a y(Hi,you have reached LT today);/*$d i s p l a y 系统任务在新的一行中显示。*/$t i m e/该系统任务返回当前的模拟时间。,Verilog的语言要素编译指令,以(反引号)开始的某些标识符是编译器指令。在Verilog 语言编译时,特定的编译器指令在整个编译过程中有效(编译过程可跨越多个文件),直到遇到其它的不同编译程序指令。完整的标准编译器指令如下:define,undef ifdef,else,endif defa
9、ult_nettype include resetall timescale unconnected_drive,nounconnected_drivecelldefine,endcelldefine,Verilog的语言要素值集合,四种基本的值类型:0:逻辑0或“假”;1:逻辑1或“真”;X:未知值;Z:高阻。注意这四种值的解释都内置于语言中。如一个为z 的值总是意味着高阻抗,一个为0 的值通常是指逻辑0。,Verilog的语言要素数据类型,两种数据类型:线网类型(net type)和 寄存器类型(reg type)。线网类型代表的是物理连接线,因此它不存贮逻辑值。必须由器件所驱动。assi
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Verilog 语言 编程 基础

链接地址:https://www.31ppt.com/p-5452084.html