0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

verilog的数据类型

电子工程师 来源:FPGA设计论坛 作者:FPGA设计论坛 2020-09-28 11:57 次阅读

常量:
整数:<位宽 num'><进制 b|o|d|h><数字>,例如 4'b1010
x值(不定值)和z值(高阻值,也可用?代替)
x和z可以标识某一位或者某一个数字
4'b10x0,4'bx,4'b101z,4'bz,4'b?
负数:整数最前面加-
下划线:分割数字部分,更加易读(8'b1000_1000)
参数:parameter
parameter 参数名=表达式;
表达式只能是数字或者定义过的参数
变量:
wire型:wire [n-1:0] 数据名;
wire表示信号,常用来表示assign关键字指定的组合逻辑信号
wire型信号可以用作输入,输出
reg型:reg [n-1:0] 数据名;
对存储单元的抽象
常用来表示always模块内的指定信号,常代表触发器
always块内被赋值的每一个信号都必须定义为reg型
memory型:reg [n-1:0] 存储器名[m-1:0];
reg [n-1:0]表示基本存储单元的大小
存储器名[m-1:0]表示基本存储单元的个数,存储空间的容量
对存储器进行地址索引的表达式必须是常数表达式
一个n位寄存器可以在一条赋值语句里进行赋值,而一个完整的存储器不行
运算符及表达式:
基本运算符:+ - * / %
位运算符:~ & | ^ ^~
逻辑运算符:&& || !
关系运算符:< > <= >=
等式运算符:== != (不管x、z,结果可能是不定值)
=== !==(对参数的x、z都进行比较)
移位运算符:<< >>
位拼接运算符:{ },将几个信号拼接起来,例如{a,b[3:0],w,3'b100}
缩减运算符:C =&B;C =|B;C =^B;
优先级别:和c语言差不多,加括号
赋值语句:
1)非阻塞赋值方式(b <= a)
a.块结束才完成赋值
b.b的值不是立刻就改变的
c.在可综合的模块中常用
2)阻塞赋值方式(b = a)
a.赋值语句执行完成后,块才结束
b.b的值在赋值语句执行后立刻改变
c.可能会产生意想不到的结果
简单理解:
非阻塞赋值用了多个触发器,每次时钟到达,所有触发器都触发一次
阻塞赋值连到同一个触发器上,时钟到达,导致所有寄存器被赋值

原文标题: 常量 变量

文章出处:【微信公众号:FPGA设计论坛】欢迎添加关注!文章转载请注明出处。

责任编辑:haq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Verilog
    +关注

    关注

    28

    文章

    1351

    浏览量

    110129

原文标题:verilog数据类型 常量 变量

文章出处:【微信号:gh_9d70b445f494,微信公众号:FPGA设计论坛】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    Verilog与VHDL的比较 Verilog HDL编程技巧

    理解。 VHDL :VHDL 的语法更接近于 Ada 语言,它是一种更正式的语言,具有丰富的数据类型和结构。VHDL 支持数据流、行为和结构化三种描述方式。 2. 可读性和可维护性 Verilog
    的头像 发表于 12-17 09:44 172次阅读

    西门子博途新数据类型之:SINT(8位整数)

    数据类型 SINT (Short INT) 的操作数长度为 8 位,由以下两部分组成:一部分是符号,另一部分是数值。位 0 到 6 的信号状态表示数值。位 7 的信号状态表示符号。符号可以是“0”(正信号状态),或“1”(负信号状态)。
    的头像 发表于 11-09 09:52 1006次阅读
    西门子博途新<b class='flag-5'>数据类型</b>之:SINT(8位整数)

    FPGA编程语言的入门教程

    编程基础 基本结构 Verilog程序的基本结构包括模块(module)和端口(port)定义。每个模块都有输入(input)、输出(output)和可能的双向(inout)端口。 数据类型
    的头像 发表于 10-25 09:21 294次阅读

    AIC23采集到的数据是应该用什么数据类型来接收?int还是unsigned int?

    AIC23采集到的数据是应该用什么数据类型来接收,int还是unsigned int? 这个采集到的数字是什么含义呢?代表的是声音信号的幅值? while(!MCBSP_rrdy(hMcbsp
    发表于 10-18 06:56

    labview数据类型的取值范围是多少

    LabVIEW的数据类型丰富多样,涵盖了整数、小数(浮点数)、复数等多种类型,每种类型都有其特定的取值范围。以下是对LabVIEW中常见数据类型取值范围的说明: 整数
    的头像 发表于 09-04 17:33 1125次阅读

    常见的遥感数据类型有哪些

    遥感技术是一种通过遥感器在远离目标的位置获取目标地物的电磁波信息,并进行分析的技术。遥感数据类型繁多,涵盖了从可见光到红外、微波等多个波段,以及不同的数据格式和分辨率。 光学遥感数据 : 全色影像
    的头像 发表于 09-04 14:30 1712次阅读

    人体红外传感器的数据类型及工作原理

    人体红外传感器是一种利用红外技术检测人体活动和位置的传感器。它广泛应用于安防、智能家居、医疗健康等领域。 人体红外传感器的数据类型 人体红外传感器的数据主要包括以下几种类型: 1.1 温度数据
    的头像 发表于 08-20 09:18 862次阅读

    技术干货驿站 ▏深入理解C语言:基本数据类型和变量

    在C语言中,数据类型和变量是编程的基础,也是理解更复杂概念的关键。数据类型决定了变量的内存分配、存储范围和操作方式,而变量则是存储数据的容器。本篇文章将从基本数据类型和变量两个方面,带
    的头像 发表于 07-26 17:53 2164次阅读
    技术干货驿站 ▏深入理解C语言:基本<b class='flag-5'>数据类型</b>和变量

    ESP32-S3是否支持修改控制端点数据类型

    ESP32-S3是否支持修改控制端点数据类型(如标准类型,自定义类型); 我需要在控制传输数据阶段的DATA0包改为我的USB设备规定的8个字节的
    发表于 06-07 06:00

    鸿蒙TypeScript开发入门学习第3天:【TS基础类型

    任意值是 TypeScript 针对编程时类型不明确的变量使用的一种数据类型,它常用于以下三种情况。
    的头像 发表于 03-28 15:02 549次阅读
    鸿蒙TypeScript开发入门学习第3天:【TS基础<b class='flag-5'>类型</b>】

    C语言数据类型有哪些

    在 C 语言中,数据类型指的是用于声明不同类型的变量或函数的一个广泛的系统。变量的类型决定了变量存储占用的空间,以及如何解释存储的位模式。
    发表于 03-20 10:56 486次阅读
    C语言<b class='flag-5'>数据类型</b>有哪些

    C语言如何掌握强制类型转换的精髓

    强制类型转换是把变量从一种类型转换为另一种数据类型。例如,如果您想存储一个 long 类型的值到一个简单的整型中,您需要把 long 类型
    的头像 发表于 02-26 11:00 525次阅读
    C语言如何掌握强制<b class='flag-5'>类型</b>转换的精髓

    arcgis值类型与字段类型不兼容

    数据类型,用于定义字段可以存储的数据范围和格式。常见的字段类型包括整数(int),浮点数(float),日期(date),文本(string)等。当我们在创建数据表或图层时,需要选择
    的头像 发表于 02-25 11:14 1717次阅读

    verilog inout用法与仿真

    Verilog语言是一种硬件描述语言(HDL),用于描述数字逻辑电路和系统。它是一种非常强大且广泛使用的语言,在数字电路设计中扮演着重要的角色。其中, inout 是Verilog中的一种信号类型
    的头像 发表于 02-23 10:15 3082次阅读

    verilog task和function区别

    : task的语法格式为:task [automatic|static] 数据类型 任务名称 (输入参数列表); function的语法格式为:函数数据类型 函数名称 (输入参数列表) task
    的头像 发表于 02-22 15:53 1111次阅读