问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

Verilog语法之十:过程块(initial和always)

发布网友 发布时间:2天前

我来回答

1个回答

热心网友 时间:2024-12-01 13:13

过程块作为行为模型的基础,在Verilog语法中扮演着重要角色。

过程块主要分为两种类型。

在过程块中,我们可以看到以下组成部分:

initial语句和always语句,以及begin_end与fork_join的搭配,是Verilog中的高频用法。

1.initial语句

initial语句的格式如下:

举例来说明:

[例1]:

在这个例子中,initial语句用于在仿真开始时对变量进行初始化。

[例2]:

从这个例子中,我们可以看到initial语句的另一用途,即用它来生成激励波形,作为电路的测试仿真信号。一个模块中可以有多个initial块,它们是并行运行的。

initial块通常用于测试文件和虚拟模块的编写,用来产生仿真测试信号和设置信号记录等仿真环境。

2.always语句

always语句在仿真过程中是不断重复执行的。

其声明格式如下:

always语句由于其不断重复执行的特性,只有与一定的时序控制结合在一起才有用。如果一个always语句没有时序控制,则这个always语句将会导致仿真死锁。以下是一个例子:

[例1]:

这个always语句将会生成一个0延迟的无限循环跳变过程,这时会发生仿真死锁。如果加上时序控制,则这个always语句将变为一条非常有用的描述语句。以下是一个例子:

[例2]:

这个例子生成了一个周期为20的无限延续的信号波形,这种方法常用来描述时钟信号,作为激励信号来测试所设计的电路。

[例3]:

这个例子中,每当areg信号的上升沿出现时,tick信号会反相,并且counter增加1。这种时间控制是always语句最常用的。

always的时间控制可以是沿触发也可以是电平触发的,可以是单个信号也可以是多个信号,中间需要用关键字or连接,如:

沿触发的always块通常描述时序逻辑,如果符合可综合风格要求,可用综合工具自动转换为表示时序逻辑的寄存器组和门级逻辑,而电平触发的always块通常用来描述组合逻辑和带锁存器的组合逻辑,如果符合可综合风格要求,可转换为表示组合逻辑的门级逻辑或带锁存器的组合逻辑。一个模块中可以有多个always块,它们都是并行运行的。

always是一个极高频的语法,always@()用法总结如下:

① always@(信号名)

• 信号名有变化就触发事件

② always@(posedge信号名)

• 信号名有上升沿就触发事件

③ always@(negedge信号名)

• 信号名有下降沿就触发事件

④ always@(敏感事件1or敏感事件2or…)

• 敏感事件之一触发事件

• 没有其他组合触发

⑤ always@(*)

• 无敏感列表,描述组合逻辑,和assign语句是有区别的

assign赋值语句和always@(*)语句之间的差别有:

1.被assign赋值的信号定义为wire型,被always@(*)结构块下的信号定义为reg型,值得注意的是,这里的reg并不是一个真正的触发器,只有敏感列表为上升沿触发的写法才会综合为触发器,在仿真时才具有触发器的特性。

2.另一个区别则是更细微的差别:举个例子,在这种情况下,做仿真时a将会正常为0,但是b却是不定态。这是为什么?Verilog规定,always@(*)中的*是指该always块内的所有输入信号的变化为敏感列表,也就是仿真时只有当always@(*)块内的输入信号产生变化,该块内描述的信号才会产生变化,而像always@(*)b = 1'b0;
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
江西蓝天学院和赣江职业技术学院哪个好? 江西有什么好的中专学校 什么是单点登录(SSO),以及单点登录的实现流程 前端实现单点登录(SSO) 前端单点登录如何实现 面试官:来说说单点登录的三种实现方式 为什么很多人不买哈弗H9 座机如何开通国内长途 座机如何申请 辽宁省出租车手续怎么办? Verilog中的initial块 敷衍的近义成语 我喜欢一个女孩,可是她自动离职了,悄悄的走了谁也不知道,后来还是打电 ... OPPO手机怎么删除手机管家的数据 RTX 2060属于什么档次的显卡 2060属于高端显卡么? 做性激素六项检查需要空腹? 性激素六项的化验结果,求解答! 性激素六项孕酮低的影响 海尔手机ak001海尔手机AK001 香港英雄本色演员表 英雄本色演员表全部演员介绍 铁头人少年包青天的铁头人 my summer vacation手抄报内容可以写什么 ...是一个芭比娃娃变成了人的事情,那个电影叫什么来着 之前看了一部恐怖电影,忘记片名了,电影的大概内容主演一个女孩和一... 有一部外国影片讲述一个孩子用咒语将芭比娃娃变成了真人,芭比和孩子的... 励志名言名句大全简短 关于感悟人生哲理的名言警句(生命的感悟:细数那些唯美短句) 苏州三山岛农家乐排名 08年没换新会计从业资格证书的怎么办 我于08年4月考取了会计从业资格证,需要出示在岗证明吗 ...2008年参加的会计从业资格考试并拿到了证书,想问一下需要什么时间审... iPhone 14微信视频聊天录屏没声音怎么办 iPhone 14 Pro微信视频聊天录屏没声音怎么办 iPhone 14 Pro Max微信视频聊天录屏没声音怎么办 怎么看银行卡绑定了几个微信号 win7对电脑的要求windows7系统对电脑的要求 怎么样金丝熊 南京市高淳区法院判决一年已经在看守所呆了6个月还要送到监狱吗 南京高淳监狱 老公被关在高淳看守所 案子在检察院今天就一个月了 到法院还有人通知家... 从浙江到南京市高淳监狱怎么走 身份证年龄更改后,学历证、结婚证、房产证等证件都可以更改吗 脑出血会影响病人说话吗 脑出血后一年多了说话不是很清,眼睛有点重影,右边腿和胳膊有些麻能否... 轻微脑出血的症状有哪些? 突然不能说话是什么原因 如何进行抛光? 如何抛光达到最好的效果