veriloghdl详细语法.ppt

  1. 1、本文档共94页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
veriloghdl详细语法

第三部分 Verilog HDL详细语法 主要内容: Verilog与C的主要不同点 模块实例化要点 如何选择正确的数据类型 Verilog HDL模块的测试 Verilog测试模块的编写 存储器建模 Verilog中的高级结构 用户定义的原语 3.1 Verilog与C的主要不同点 Verilog 有许多语法规则与 C 语言一致。 但与 C 语言有根本的区别: - 并行性 - 块的含义: initial 块 和 always块 两种赋值语句: 阻塞 赋值 “ = ” 非阻塞赋值 “ = ” 系统任务和函数 $标识符 ‘$’ 符号表示 Verilog 的系统任务和函数 常用的系统任务和函数有下面几种: $time //找到当前的仿真时间 $display, $monitor //显示和监视信号值的变化 $stop //暂停仿真 $finish //结束仿真 ------------------------------------------------------- 例: initial $monitor($time,”a=%b, b=%h”, a, b); //每当a 或b值变化时该系统任务都显示当前的仿真时刻并分别用二进制和十六进制显示信号a和 b的值 特殊符号 “#” 特殊符号 “#” 常用来表示延迟: 在过程赋值语句时表示延迟。 例:initial begin #10 rst=1; #50 rst=0; end 在门级实例引用时表示延迟。 例:not #1 not1(nsel, sel); and #2 and2(a1, a, nsel); 在模块实例引用时表示参数传递 编译引导语句 编译引导语句用主键盘左上角小写键 “ ` ” 起头 用于指导仿真编译器在编译时采取一些特殊处理 编译引导语句一直保持有效,直到被取消或重写 `resetall 编译引导语句把所有设置的编译引导恢复到缺省状态 常用的编译引导有: `define `include `timescale `uselib `resetall …….. 编译引导语句 使用`define 编译引导能提供简单的文本替代功能 `define 宏名 宏文本 在编译时会用宏文本来替代源代码中的宏名。 合理地使用`define可以提高程序的可读性 举例说明: `define on 1’b1 `define off 1’b0 `define and_delay #3 在程序中可以用有含义的文字来表示没有意思的数码提高了程序 的可读性,在程序中可以用 `on, `off, `and_delay 分别表 示 1,0,和 #3 。 编译引导语句 使用`include 编译引导,在编译时能把其指定的整个文件包括进来一起处理 举例说明: `include “global.v” `include “parts/counter.v” `include “../../library/mux.v” 合理地使用`include 可以使程序简洁、清晰、条理清楚、易于查错。 编译引导语句 `timescale 用于说明程序中的时间单位和仿真精度 举例说明: `timescale 1ns/100ps `timescale 语句必须放在模块边界前面 举例说明: `timescale 1ns/100ps module MUX2_1(out,a,b,sel); … … not #1 not1(nsel, sel); and #2 and1(a1, a, nsel); … … endmodule 尽可能地使精度与时间单位接近,只要满足设计的实际需要就行。 举例说明:在上例中所有的时间单位都是1ns的整数倍 编译引导语句 仿真步长即仿真单位(STU) 是所有参加仿真模块中由`timescale 指定的精度中最高(即时间最短)的那个决定的: (STU=100fs) 举例: `timescale 1ns/1

文档评论(0)

shujukd + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档