VerilogHDL基本语法讲义.ppt

  1. 1、本文档共82页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2.2 Verilog HDL的词法 2.3 Verilog HDL的语句 2.3.1 赋值语句 2.3.2 条件语句 2.3.3 循环语句 2.4 不同抽象级别的Verilog HDL模型 2.2.7 Verilog HDL数据对象 Verilog HDL数据对象是指用来存放各种类型数据的容器,包括常量和变量。 1. 常量 常量是一个恒定不变的值数,一般在程序前部定义。 常量定义格式为 parameter 常量名1 = 表达式,常量名2 = 表达式,…, 常量名n = 表达式; parameter是常量定义关键字,常量名是用户定义的标识符,表达式是为常量赋的值。例如 parameter vcc = 5,fbus = 8’ 2. 变量 变量是在程序运行时其值可以改变的量。 在Verilog HDL中,变量分为网络型(nets type)和寄存器型(register type)两种。 (1)网络型变量(nets type) nets型变量是输出值始终根据输入变化而更新的变量,它一般用来定义硬件电路中的各种物理连线。 类 型 功能说明 wire、tri 连线类型(两者功能完全相同) wor、trior 具有线或特性的连线(两者功能一致) wand、triand 具有线与特性的连线(两者功能一致) tri1、tri0 分别为上拉电阻和下拉电阻 supply1、supply0 分别为电源(逻辑1)和地(逻辑0) Verilog HDL提供的nets型变量如下 (2)寄存器型变量(register type) register型变量是一种数值容器,不仅可以容纳当前值,也可以保持历史值,这一属性与触发器或寄存器的记忆功能有很好的对应关系。 register型变量与wire型变量的根本区别:register型变量需要被明确地赋值,并且在被重新赋值前一直保持原值。 register型变量是在always、initial等过程语句中定义,并通过过程语句赋值。 常用的register型变量及说明 类 型 功 能 说 明 reg 常用的寄存器型变量 integer 32位带符号整数型变量 real 64位带符号实数型变量 time 无符号时间型变量 integer、real和time等3种寄存器型变量都是纯数学的抽象描述,不对应任何具体的硬件电路,但它们可以描述与模拟有关的计算。例如,可以利用time型变量控制经过特定的时间后关闭显示等。 reg型变量是数字系统中存储设备的抽象,常用于具体的硬件描述,因此是最常用的寄存器型变量。 reg型变量定义的关键字是reg,定义格式如下 reg [位宽] 变量1,变量2,…,变量n; 用reg定义的变量有一个范围选项(即位宽),默认的位宽是1。位宽为1位的变量称为标量,位宽超过1位的变量称为向量。标量的定义不需要加位宽选项,例如 reg a,b; //定义两个reg型变量a,b 向量定义时需要位宽选项,例如 reg[7:0] data; //定义1个8位寄存器型变量,最高有效位是7,最低有效位是0 reg[0:7] data; //定义1个8位寄存器型变量,最高有效位是0,最低有效位是7 向量定义后可以采有多种使用形式(即赋值) data=8’ data[5:3]=3’b111; data[7]=1; (3)数组 若干个相同宽度的向量构成数组。在数字系统中,reg型数组变量即为memory(存储器)型变量。 存储器型可以用如下语句定义 reg[7:0] mymemory[1023:0]; 上述语句定义了一个1024个字存储器变量mymemory,每个字的字长为8位。在表达式中可以用下面的语句来使用存储器: mymemory[7] = 75; //存储器mymemory的第7个字被赋值75 语句是构成Verilog HDL程序不可缺少的部分。Verilog HDL的语句包括赋值语句、条件语句、循环语句、结构说明语句和编译预处理语句等类型,每一类语句又包括几种不同的语句。在这些语句中,有些语句属于顺序执行语句,有些语句属于并行执行语句。 1. 门基元赋值语句 格式: 基本逻辑门关键字 (门输出,门输入1,门输入2,…,门输入n); 基本逻辑门关键字是Verilog HDL预定义的逻辑门,包括and、or、not、xor、nand、nor等;圆括弧中内容是被描述门的输出和输入信号。 例如,具有a、b、c、d四个输入和y为输出与非门的门基元赋值语句为

文档评论(0)

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

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

版权声明书
用户编号:8133070117000003

1亿VIP精品文档

相关文档