verilog设置24进制计数器_阅读笔记:《Verilog HDL入门》第3章 Verilog语言要素

3.1标识符

1.Verilog中的Identifier是由任意字母、数字、下划线和$符号组成的,第一个字符必须是字母或者下划线。区分大小写。

2.Escaped Identifier是为了解决简单标识符不能以数字和$符号开头的缺点。如下所示:

efe73e9056b1086caf6b59cd77be63a8.png

3.关键字。我的理解是保留字包括关键字,verilog中关键字都是小写的。

3.2注释

  1. /* */

2. //

3.3格式

语句结构既可以跨越多行编写,也可以在一行内编写。

3.4系统任务和系统函数

以$开头的标识符被认为是系统任务或者系统函数。任务可以返回0个或者多个值,函数只能返回一个值。函数的执行不允许由任何延迟,任务可以有延迟。但是系统任务不能有延迟。简单做个测试,但是发现控制台没有输出。

a6d8cb4fb0118039f664eacbc89c5b80.png

3.5编译器指令

某些以`(反引号)开头的标志符是编译器指令。

1. `define和`undef指令:宏定义以及取消前面的宏。

2.`ifdef、`ifndef、`else、`elseif和`endif:条件编译。

3.`default_nettype:该指令用于为隐式线网指定线网类型。

e8865d74bb5bec313562c0993d4a2d01.png

4.`include:可以包含其他文件的内容(替换的方式)。绝对路径和相对路径都可以。

5.`resetall:将所有的编译指令重新设置为缺省值。

6.`timescale:一般放在模块声明的外部,影响其后所有的延迟值。直到遇到另一个`timescale指令或者`resetall指令。

3.6值集合

Verilog中有四种基本值:0,1,x,z。其中x、z是不区分大小写的。这四种基本值构成了Verilog语言中3种类型的常数:Integer、Real和String。下划线可以自由地在整数中或者实数中使用,用来改进常量的易读性。

3.6.1整数型

1.简单的十进制:+、-这两个操作符只能作用于十进制,不能作用于其他进制。

2.基数格式表示法:

[size] '[signed] base value

基数格式的数通常为无符号数。若某整型数的位宽没有定义,则默认是32位的。无符号数在左边补零,有符号数在左边补符号位。若数的最左边是x或者z,则补x或z。

base是必须要有的。

3.6.2实数

1.十进制:小数点两侧必须有数字。

2.科学计数法:23_5.1e2。

Verilog将实数隐式地转换成整数。

3.6.3字符串

字符串是双引号括起的字符序列。字符串是8位ASCII值的序列。

3.7数据类型

Verilog有两大数据类型:Net Type和Variable Type。

3.7.1线网类型

关于这部分,多个激励源驱动的线网,线网的值有效值由表决定。

e90fdff4bbbb62249524869bb23d2c9b.png

3.7.2未声明的线网

3.7.3向量线网和标量线网

3.7.4变量类型

1.reg变量类型

使用了关键词signed的reg变量,会以补码的形式保存。

2.存储器

存储器是由reg变量组成的数组。存储器声明格式如下:

reg[[msb : lsb]] memory1[upper1 : lower1], ...;

存储器中的每一个元素被称为字,对存储器赋值可以分别对存储器中的每个字进行赋值。文中提到了使用for循环对存储器进行赋值。还可以使用$readmemb和$readmemh这两个函数对存储器进行赋值。

3.整型变量

整型变量的声明格式如下所示:

integer integer1, integer2, ... integerN[msb : lsb];

[msb : lsb]指定了整型数组的范围。一个整形数至少有32位。

整型能被当作向量处理。可以通过赋值将整数型转换为位向量。

4.time变量

5.real和realtime变量

3.7.5数组

看一下二维数组的声明:

integer 

一维reg变量的数组也被称为存储器。不能对整个数组进行赋值。只能对数组的一个元素进行赋值。

3.8参数

参数声明语句的格式如下:

parameter [signed][msb : lsb] param1 = const_expr,...;

参数值在编译的时候可以使用defparam进行改变。参数是局部的,只能在其定义的模块内部其作用,而宏定义对同时编译的多个文件起作用。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/431189.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

linux中python安装_linux环境下的python安装过程图解(含setuptools)

这里我不想采用诸如ubuntu下的apt-get install方式进行python的安装,而是在linux下采用源码包的方式进行python的安装。一、下载python源码包打开ubuntu下的shell终端,通过wget命令下载python源码包,如下图所示:将python-2.7.3.tgz下载至/opt…

锋利的jQuery--jQuery与DOM对象的互相转换,DOM的三种操作(读书笔记一)

1.jQuery对象就是通过jQuery包装DOM对象后产生的对象。2.jQuery对象和DOM对象的相互转换。良好的书写风格&#xff1a;var $input$("input")jQuery获取的对象在变量前面加上$。<1>jQUery对象转成DOM对象,两种方法&#xff1a;[index]和get(index)a:var $cr$(&q…

网站显示不正常服务器怎么弄,你真的知道网站出现收录不正常的原因是什么吗...

当一个新网站构建起来时&#xff0c;每天所担心的就是一个收录量。当你偶然看到收录减少时&#xff0c;不免心有所寒。不知道怎么“得罪”蜘蛛大哥了&#xff0c;发生了什么事把收录量给“没收”了。作为SEOer&#xff0c;我们知道在搜索引擎蜘蛛的心里内容的质量占有很大比重&…

自定义标签 (choose)

因为有3个标签,所以写3个标签处理器类 1.ChooseTag public class ChooseTag extends SimpleTagSupport {  //定义一个标记,用于控制跳转去向.public Boolean tag true;public Boolean getTag() {return tag;}public void setTag(Boolean tag) {this.tag tag;}Overridepubli…

计算机考上研究生暑假去哪里实习_浅谈化工与计算机行业

本人化工专业&#xff0c;毕业转行计算机。结合四年化工的学习以及互联网行业实习工作的经历&#xff0c;浅谈一下这两个行业。大二暑假到连云港一家民营炼化企业参观实习。该家企业给出的工资是三千五&#xff0c;四班两倒&#xff0c;可以住连云港的人才公寓&#xff0c;上下…

ajax status php,解决laravel 出现ajax请求419(unknown status)的问题

如下所示&#xff1a;这个是因为laravel自带csrf验证的问题解决方法方法一&#xff1a;去关掉laravel的csrf验证&#xff0c;但这个人不建议&#xff0c;方法也不写出来了。方法二&#xff1a;把该接口写到api.php上就好了方法三&#xff1a;首先在页面加上然后请求的在header里…

string 转比较运算符_运算符

1、概述算术运算符 - * /基本运算算术运算符%取模&#xff0c;取余数&#xff0c;计算整除算术运算符 --自增 自减比较运算符 !相等比较 不等比较逻辑运算符&& &逻辑与 短路与&#xff08;同真为真&#xff09;逻辑运算符|| |逻辑或 短路或&#xff08;一真则真&am…

神舟战神换cpu教程_神舟将十代i5称为“神U出世”?聊聊到底有哪些优势

在各个品牌大力的宣传之下&#xff0c;消费者对于笔记本电脑乃至各种数码硬件的要求都越来越高。既要好的处理器、显卡等性能配置&#xff0c;又要好的屏幕&#xff0c;甚至还得低定价&#xff0c;这就产生一种鱼与熊掌不可兼得的感觉了。就在今年的表白日&#xff0c;神舟电脑…

Oracle数据库更新时间的SQL语句

---Oracle数据库更新时间字段数据时的sql语句---格式化时间插入update t_user u set u.namepipi,u.modifytimeto_date(2015-10-07 00:00:00,YYYY-MM-DD HH24:MI:SS) where u.uid 11111---使用数据库系统当前时间update t_user u set u.namepipi,u.modifytimesysdate where u.u…

服务器系统杀毒系统崩溃怎么恢复,系统崩溃是什么原因导致的

大家在使用电脑的时候&#xff0c;经常都是需要安装一些软件和其他东西的。但是在安装软件的时候&#xff0c;很容易让一些病毒侵入电脑。一旦病毒侵入了电脑&#xff0c;就很容易让电脑系统崩溃。那么系统崩溃是什么原因导致的呢&#xff1f;下面就来告诉大家系统崩溃的原因及…

python argument list too long_间歇“OSError:[Errno 7]参数列表太长”,命令短(~125个字符)...

在Linux上的apache2mod_wsgi下运行的代码有时会产生以下输出。在notes.pycmd_list [abc_generate_pdf,--cdb-url-prefix, model.config(cdb_url_prefix),--request-cid, request_cid,]log.info("About to run: {!r}".format(cmd_list))subprocess.Popen(cmd_list)..…

atom配置python环境_python与excel有段情之二:python的安装和环境配置

索引python与excel有段情之一&#xff1a;前述python与excel有段情之二&#xff1a;python的安装和环境配置python与excel有段情之三&#xff1a;python编程前的准备工作和基本概念python与excel有段情之四&#xff1a;案例1.把多excel表抽数生成新excel表python与excel有段情之…

Scrapy--1安装和运行

1.Scrapy安装问题 一开始是按照官方文档上直接用pip安装的&#xff0c;创建项目的时候并没有报错&#xff0c; 然而在运行 scrapy crawl dmoz 的时候错误百粗/(ㄒoㄒ)/~~比如&#xff1a; ImportError: No module named _cffi_backend Unhandled error in Deferred 等等,发现是…

x86服务器当虚拟化的存储,龙存科技-软件定义数据中心产品提供商

一、应用背景服务器虚拟化技术是云计算的核心技术&#xff0c;是将系统进行虚拟化应用于服务器之上的技术。面向应用集中化处理&#xff0c;能最大的程度上利用硬件资源&#xff0c;并且实现灵活分配。虚拟化技术是将计算机底层的硬件功能的模拟&#xff0c;需要复杂的语句和机…

mysql 参照完整性规则_mysql参照完整性

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼MYSQL支持数据库的参照完整性约束吗&#xff1f;有四个表&#xff1a;表一的主键是的表二外键表二的主键是表三的外键表三的主键是表四的外键请问&#xff1a;如果&#xff1a;删除表一表2 3 4 会自动删除吗&#xff1f;----------…

使用python开发网页游戏_不敢想!不敢想!我用Python自动玩转2048游戏

近来在折腾selenium自动化, 感觉配合爬虫很有意思, 大多数以前难以模拟登录的网站都可以爬了&#xff0c;折腾了这么久,于是想自动玩个2048游戏&#xff01;嘿嘿, 我是一个不擅长玩游戏的人, 以前玩2048就经常得了很低的分&#xff0c;每每想起都”痛心疾首”, 所以我打算拿204…

【飞谷六期】爬虫项目4

经过了几天的摸索&#xff0c;照猫画虎的把爬虫的部分做完了。 但是很多原理性的东西都不是很理解&#xff0c;就是照着抄的&#xff0c;还需要继续学习。 看这个目录结构&#xff0c;只看.py的文件&#xff0c;.pyc的文件是运行的时候生成的不管它。 items.py:定义想要导出的数…

can通讯bdc_宝马总线K-CAN3和K-CAN4常见案例

K-CAN31.G30/38 照明系统报警.诊断&#xff1a;左侧大灯模块K-CAN3通讯故障。故障位置&#xff1a;左前大灯插头附近的K-CAN 3线束与左前支撑架之间有磨损2.G38 右侧大灯照明系统故障.诊断&#xff1a;右侧大灯模块上面K-CAN3的PIN脚异常&#xff0c;导致间歇性短路。故障位置&…

activex控件 新对象 ocx 初始化_Office已经支持64位的树控件Treeview了

之前在使用Office365时发现微软其实已经悄悄地开始提供了64位的Treeview树控件&#xff0c;只是并没有公开宣布。当时是在一个网友的电脑上说他可以在64位Excel中可直接使用64位树控件&#xff0c;当时以为他看到的只是一个假的树控件&#xff0c;后来经过远程他的电脑&#xf…

彼得原理(The Peter Principle)

一、 关于彼得原理(The Peter Principle) 彼得原理&#xff08;The Peter Principle&#xff09;是由美国管理学家劳伦斯彼得&#xff08;Laurence&#xff0e;J&#xff0e;Peter&#xff09;根据千百个有关组织中不能胜任的失败实例的分析而归纳出来的并于1960年在美国联邦出…