首页 > 其他 > 详细

modelsim使用function和display

时间:2014-05-25 03:48:02      阅读:406      评论:0      收藏:0      [点我收藏+]

【步骤1】在modelsim中输入<tryfactl.v>文件内容如下

module tryfact;
function[31:0]factorial;   //此处定义函数,[31:0]是返回值的类型或范围,factorial是函数名
  input[3:0]operand;        //端口说明语句
  reg[3:0]index;           //变量类型说明语句
begin
  factorial =1;
  for(index=2;index<=operand;index=index+1)
  factorial=index*factorial; //结果返回给函数名factorial
end
endfunction       //函数结束


//函数测试代码
reg[31:0]result;
reg[3:0]n;
initial begin
  result=1;
  for(n=2;n<=9;n=n+1) begin
     $display("partial result n= %d result=%d",n,result);
     result=n*factorial(n)/((n*2)+1);
  end
      $display("Finalresult=%d",result);
end
endmodule

【步骤2】在transcript窗口中输入vlog tryfact.v     // 编译源文件

编译成功后输入 vsim tryfact   //仿真tryfact模块

最后输入run -all    //运行仿真后就可以看到$display显示的结果

# partial result n= 2 result= 1
# partial result n= 3 result= 0
# partial result n= 4 result= 2
# partial result n= 5 result= 10
# partial result n= 6 result= 54
# partial result n= 7 result= 332
# partial result n= 8 result= 2352
# partial result n= 9 result= 18974
# Finalresult= 171890

modelsim使用function和display,布布扣,bubuko.com

modelsim使用function和display

原文:http://www.cnblogs.com/zhangxiujun/p/3750459.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!