首页 > 其他分享 >verilog语法

verilog语法

时间:2023-09-14 15:22:05浏览次数:29  
标签:wire name 数据类型 线网 语法 verilog 寄存器

状态

verilog中对于状态的描述一共有四个

  • 1:高电平
  • 0:低电平
  • x:未知,可以是高电平也可以是低电平
  • z:高阻态,悬空状态

进制

verilog的进制和其他语言有很大的不同

  • 二进制:4'b0101表示四位二进制的0101
  • 十进制:4'd2表示四位十进制的2
  • 十六进制:4'ha表示四位十六进制的a

总之前面的4是指位宽后面的是指进制等

标识符

类似变量名,用于定义变量、模块名、端口名、信号名等

标识符的第一个符号不能是数字

数据类型

verilog中主要有三大数据类型

  • 寄存器数据类型
  • 线网数据类型
  • 参数数据类型

这三大数据类型中真正起作用的是寄存器和线网数据类型,参数其实就是中间过度的东西

寄存器数据类型(reg)

只能在always和initial中被赋值,默认初始值是不定值x。

如果过程描述时序逻辑,即always带有时钟信号则寄存器变量为对应的触发器

如果过程描述组合逻辑,即always不带有时钟信号则寄存器变量为对应的硬件连线

其实就是一个器件。

在定义的时候需要在末尾加上分号,reg 【31:0】name;其中中括号表示位宽,高位在前地位在后,若未给出默认位宽为1.

线网数据类型(wire)

表示结构体之间的物理连线,并且线网不能存储值,它的值由驱动它的原件所决定的。

驱动线网的变量的元件有,门、连续赋值语句、assign等。

如果没有驱动元件连接到线网上则该变量为高阻态z。

线网数据类型wire、tri(很少用)

wire name;

wire [31:0] name;

参数类型(常量 parameter)

有define的效果

parameter name = 4'b0101;

如果定义多个参数除了最后一个参数其他用逗号隔开就行

运算符

与c基本一致

 

标签:wire,name,数据类型,线网,语法,verilog,寄存器
From: https://www.cnblogs.com/recodemo/p/17702437.html

相关文章

  • MySQL数据库的DML语法及使用举例
    本文列举数据库的操纵语言的语法及实际使用,以班级表作为举例:班级表:classroom点击查看创建班级表sqlcreatetableclassroom( cidintPRIMARYKEYauto_increment, cnamevarchar(20), desvarchar(50));一、插入数据语法:insertinto表名[(字段名….)]values(值….......
  • MD语法 —— 代码块类型表
    代码类型关键字对应表语言类型关键字对应jsAppleScriptapplescriptshBrushAppleScript.jsActionScript3.0actionscript3,as3shBrushAS3.jsShellbash,shellshBrushBash.jsColdFusioncoldfusion,cfshBrushColdFusion.jsCcpp,cshBrushCpp.js......
  • 【Python篇】Python基础语法
    【Python篇】Python基础语法拖拖拖,能使工作便捷高效的为何要拒绝,作个记录---【蘇小沐】1.实验环境默认情况下,Python3源码文件以<fontcolor='red'>UTF-8</font>编码,所有字符串都是unicode字符串。指定源码文件其它编码:#-*-coding:cp-1252-*-#允许在源文件中使用W......
  • 语法
    丰富的语法可以用行号突出显示各种编程语言。要对突出显示代码进行语法排序,请构造一个对象并将其打印到控制台。下面是一个示例:fromrich.consoleimportConsolefromrich.syntaximportSyntaxconsole=Console()withopen("syntax.py","rt")ascode_file:synta......
  • Vue3语法基本使用
    1、watch使用watch(监听数据源,执行函数,[配置参数])//配置参数:立即执行深度监听{immediate:true,deep:true}1.1监听基本数据类型单一数据源<scriptsetup>import{ref,watch}from'vue'letname=ref('张麻子')//监听器watch(name,(new......
  • MySQL SQL语法大全
    SQL语法基础知识总结|JavaGuide(Java面试+学习指南)基本概念数据库术语数据库(database)-保存有组织的数据的容器(通常是一个文件或一组文件)。数据表(table)-某种特定类型数据的结构化清单。模式(schema)-关于数据库和表的布局及特性的信息。模式定义了数据在表中如何存储......
  • 普及一点基础语法知识
    https://www.bilibili.com/read/cv25225883/ 作者:Larry想做技术大佬https://www.bilibili.com/read/cv25225883/出处:bilibili 公布下答案,以及,顺便普及一点基础语法知识。 eoplelieallthetime,it'sauniversalthing.这个句子的所谓“语法错误”,没那么容易分析,我......
  • 如何在 Zsh 中启用语法高亮?
    在Zsh中启用语法高亮可以让我们在终端中更加方便地识别命令的关键字、参数和特殊符号,提高工作效率和命令行使用体验。在本文中,我们将介绍如何在Zsh中启用语法高亮。Zsh是什么?Zsh是一种Unixshell,是Bourneshell的一种替代品。它提供了更多的功能和特性,比如命令补全、自动纠错、历......
  • 预处理器 Less 的十个语法
    预处理器Less的十个语法 Less是一门CSS预处理语言,它扩充了CSS语言,增加了诸如变量、混合(mixin)、函数等功能,让CSS更易维护、方便制作主题、扩充。不过浏览器只能识别CSS语言,所以Less语言直接运行在浏览器端是不被识别的,需要我们通过一些方式将其先转成CSS,再将......
  • Markdown语法
    字体Hello,World! 加粗使用**字体**Hello,World!  斜体 使用 *字体*Hello,World! 加粗斜体 使用  ***字体***Hello,World!  Hello,World!引用使用>Hello分割线使用 ---或者***图片![截图](图片地址)超链接跳转到Java学......