当前位置:网站首页>Verilog tutorial (11) initial block in Verilog
Verilog tutorial (11) initial block in Verilog
2022-07-04 23:59:00 【mb611f1478c9b26】
List of articles
- Preface
- Text
- Grammar format
- initial What is the block used for ?
- initial When the block begins and when it ends ?
- How many... Are allowed in a module initial block ?
Preface
In a simulation, a set of Verilog sentence . These statements are placed in a block . stay Verilog There are two main types of blocks in –initial Block and always block .
Text
Grammar format
initial Block can be understood as an initialization block , stay initial The starting position of the statement in 0 The moment begins to execute , After that, if there is a delay , The next statement is executed after the delay .
The syntax is as follows :
initial
[single statement]
initial begin
[multiple statements]
end
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
If initial There are multiple statements in , Then place the begin …end Between .
initial What is the block used for ?
The initial block is not integrable , So it can't be converted into a hardware schematic with digital elements . Therefore, in addition to being used in simulation , It doesn't help much . These blocks are mainly used to initialize variables and design ports with specific values .
Be careful : In chip logic design ,initial Blocks really can only be used for behavioral simulation , But in FPGA In design , Simple use initial The initialization of variables can be integrated .
for example :
reg a, b, c;
initial begin
a = 0;
b = 0;
c = 0;
end
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
But we initialize more at the moment of variable definition , This is the recommended usage .
for example :
reg a = 0;
- 1.
Or use a reset signal to initialize , But this will increase the burden of generic cabling , You can consciously reduce , Unless you have to .
for example :
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
initial When the block begins and when it ends ?
At the beginning of the simulation , In time 0 Unit starts an initial block . Throughout the simulation process , This block of code is executed only once . once initial All statements in the block are executed ,initial The execution of the block ends .
If initial There's just one sentence in the block , So the beginning is the end , The statement is executed to end this initial block , Such as :

The code shown in the figure below has an extra statement , It gives the signal b Assigned some values , But this only happens when the previous statement is executed 10 After units of time . It means a First assigned to a given value , And then in 10 After units of time ,b Assigned to 0.

How many... Are allowed in a module initial block ?
There can be multiple ( Arbitrarily )initial block .
Multiple initial Blocks are executed simultaneously , It's all from the moment 0 Start execution .
The code shown in the figure below has three initial blocks , All the initial blocks start and run in parallel at the same time . However , According to the statement and delay in each initial block , The time required to complete the block may vary .

$finish It's a Verilog System tasks , It tells the emulator to terminate the current simulation .
If the last block has 30 Time unit delay , As shown in the figure below , The simulation will be in 30 Time units end , So it killed all the others that were active at the time initial block .
initial begin
#30 $finish;
end
- 1.
- 2.
- 3.
Reference material
- WeChat official account : FPGA LAB
边栏推荐
- js正则表达式之中文验证(转)
- Actual combat simulation │ JWT login authentication
- Summary of week 22-07-02
- How to apply for PMP project management certification examination?
- ICML 2022 | 3dlinker: e (3) equal variation self encoder for molecular link design
- 业务场景功能的继续修改
- Life is changeable, and the large intestine covers the small intestine. This time, I can really go home to see my daughter-in-law...
- 【kotlin】第三天
- [paper reading] Tun det: a novel network for meridian ultra sound nodule detection
- Best practice case of enterprise digital transformation: introduction and reference of cloud based digital platform system security measures
猜你喜欢

Significance of acrel EMS integrated energy efficiency platform in campus construction

Selected cutting-edge technical articles of Bi Ren Academy of science and technology

Intelligence test to see idioms guess ancient poems wechat applet source code

机器人强化学习——Learning Synergies between Pushing and Grasping with Self-supervised DRL (2018)

Every time I look at the interface documents of my colleagues, I get confused and have a lot of problems...

45岁教授,她投出2个超级独角兽
![[paper reading] Tun det: a novel network for meridian ultra sound nodule detection](/img/25/e2366cabf00e55664d16455a6049e0.png)
[paper reading] Tun det: a novel network for meridian ultra sound nodule detection

Microservice

It's too convenient. You can complete the code release and approval by nailing it!

【路径规划】RRT增加动力模型进行轨迹规划
随机推荐
[paper reading] Tun det: a novel network for meridian ultra sound nodule detection
Instructions for go defer
Advanced template
微服务(Microservice)那点事儿
Meet ThreadPoolExecutor
业务场景功能的继续修改
Power operation and maintenance cloud platform: open the new mode of "unattended and few people on duty" of power system
如何有效对直流列头柜进行监测
"Xiaodeng" domain password policy enhancer in operation and maintenance
How to save your code works quickly to better protect your labor achievements
Basic points of the game setup of the points mall
人生无常,大肠包小肠, 这次真的可以回家看媳妇去了。。。
How long does it take to obtain a PMP certificate?
Go step on the pit - no required module provides package: go mod file not found in current directory or any parent
Examples of time (calculation) total tools: start time and end time of this year, etc
How to reduce the stock account Commission and stock speculation commission? Is it safe to open an online account
Galera cluster of MariaDB - dual active and dual active installation settings
Using fast parsing intranet penetration to realize zero cost self built website
华泰证券低佣金的开户链接安全吗?
PermissionError: [Errno 13] Permission denied: ‘data. csv‘