b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

testbench_testbench如何加载_vhdl testbench reset(4)

电脑杂谈  发布时间:2017-03-09 10:04:50  来源:网络整理

b = ~add(task1_a);

endtask

function [1:0]invert;//函数调用函数

input [1:0] a;

invert = ~add(a);

endfunction

//显示和文件操作

integer i;

initial

begin

a1 = 0;

for(i=0;i<100;i=i+1)

begin

if(a1 == 8'd50)

begin

$write("a1 is %d",a1);//显示

$write("\n\n\n\n\n\n");

$fwrite(f_id,"a1 is %d",a1);//写入文件

$fwrite(f_id,"\n\n\n\n\n\n");

end

else if(a1 == 8'd70)

begin

$display("a1 is %d\n\n",a1);//显示

$fdisplay(f_id,"a1 is %d\n\n",a1);//写入文件

end

else if (a1 == 8'd90)

begin

$fclose(f_id);

end

#2 a1 = a1 +1;

end

end

initial

begin

$monitor("test%d\n",a1);//变量变化就会显示

end

integer f_id;

initial

begin

f_id =$fopen("./test.txt");//打开一个文件

end

initial

begin

$strobe("tes1t%d\n",a1); //在时间步0结束的时候显示这一句

end

integer cool;

initial

begin

cool =4;//这是时间步0要执行的,

$strobe("strobe cool1 is %d at time%t\n",cool,$time);//这是时间步0要执行的,在时间步的最后显示

$display("cool1 is %d at time%t\n",cool,$time);//这是时间步0要执行的,

#4 cool =8;//这是时间步4要执行的,

$strobe("strobe2 cool1 is %d at time%t\n",cool,$time);//这是时间步4要执行的,

$display("cool2 is %d at time%t\n",cool,$time);//这是时间步4要执行的,

标签: testbench模型

testbench的一般模型

testbench的实现方法多样,而且还不断涌现出新方法,这些都是人们在为更好的验证设计做的努力。如VHDL,verilog,systemC,systemverilog均可以,但是真正的实际应用中绝对不是单独应用,而是将他们结合起来,使你的验证更方便,更全面。

由于系统验证的庞大,我们还是从最简单的,最熟悉的上手,就先单独用VHDL语言来写仿真语言,当然VHDL语言我们已经比较熟悉了,但是有个比较大的区别是,我们以前都是尽量学习能够综合的语言,但是在仿真中经常会用到一些行为级描述的语言,他们是不能被综合成逻辑的,但是却绝对可以让我们的验证更加高效方便,但是我们也不单独来讨论VHDL中哪些语言是能够综合,哪些语言是不能综合的,重点将会放在testbench的一般结构,编写testbench的一般思想,以及更多的是实际接触,以实际的例子与前面的可综合逻辑相结合达到完整的系统设计的上的!

testbench的几种思路:

一、只在testbench中实例化DUT(design undertest),激励输入是在testbench中临时产生的,只能用于简单逻辑。优点:简单,易操作。缺点:复用性差,效率低 模型如图1所示


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/tongxinshuyu/article-36621-4.html

相关阅读
    发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

    • 魏张鉴
      魏张鉴

      刺杀总统本来就是刑事

    • 杨发柽
      杨发柽

      濒海战斗舰也就是反恐和特种作战用的

    每日福利
    热点图片
    拼命载入中...