testbench常用语句 很详细相当实用 您所在的位置:网站首页 pua常用语句 testbench常用语句 很详细相当实用

testbench常用语句 很详细相当实用

2024-01-27 17:47| 来源: 网络整理| 查看: 265

内容

与可综合Verilog代码所不同的是,testbench Verilog是在计算机主机上的仿真器中执行的。testbench Verilog的许多构造与C语言相似,我们可在代码中包括复杂的语言结构和顺序语句的算法。

1 always块和initial块

Verilog有两种进程语句:always块和initial块。always块内的进程语句,可用来模拟抽象的电路。

出于模拟的目的,always块可以包括:用以指定与不同结构之间的传播延迟等同的时序结构;或等待指定事件的时序结构。敏感列表有时可忽略。比方说,我们用下面的代码片段来模拟时钟信号,该信号每20个时间单位在0~1间变换一次,且永远执行下去。

 

 

always

begin

  clk=1;

  #20;

  clk=0;

  #20);

end

 

initial块内也有进程语句,但是仅在仿真之初被执行。其简单语法如下:

 

 

initial

begin

 进程语句;

end

 

initail块常用于设置变量的初始值。注意,initial块不可被综合。

2 进程语句

进程语句应用于initial块、always块、function和task之中。最常用的进程语句为:

·         阻塞赋值

·         非阻塞赋值

·         if表达式

·         case表达式

·         循环表达式

我们讨论过阻塞和阻塞赋值,if和case语句。

Verilog支持的循环结构有:for、while、repeat和forever。for循环的简单语法为:

 

 

for([initial_assignment]; [end_condition]; [step_assignment])

begin

  [procedural_statements;]

end

 

举个例子,我们可以使用下面的语句来清除16位寄存器文件的内容:

 

 

integer i;

. . .

for(i=0; i



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有