Chinaunix首页 | 论坛 | 博客
  • 博客访问: 366887
  • 博文数量: 50
  • 博客积分: 1495
  • 博客等级: 上尉
  • 技术积分: 805
  • 用 户 组: 普通用户
  • 注册时间: 2010-12-21 14:19
文章分类

全部博文(50)

文章存档

2011年(47)

2010年(3)

分类: 嵌入式

2011-01-04 14:19:41

task和function说明语句的不同点
1,函数只能与主模块共用同一个仿真时间单位,而任务可以定义自己的仿真时间单位;
2,函数不能启动任务,而任务能启动其他任务和函数;
3,函数最少有一个输入变量,而人物可以没有或有多个任何类型的变量;
4,函数返回一个值,而任务不返回值。

task说明语句
   如果传给任务的变量值和任务完成后接受结果的变量已定义,就可以用一条语句启动任务。任务完成后控制就传回启动过程。如果任务内部有定时控制,则启动的时间可以与控制返回的时间不同。任务可以启动其他的任务,其他的任务又可以启动别的任务,且数量没有限制。

任务的定义:
task :
    port and data type;
    statement_1;
    statement_2;
    .....
 endtask

任务的调用:
(port1, port2, ...);

eg.  task my_task;
       input a, b;
       inout c;
       output d, e;
      
       .....
      
       c = foo1; //赋初始值
       d = foo2; //对任务的输出变量赋值
       e = foo3;
      endtask

任务调用:
       my_task(v, w, x, y, z);



阅读(1672) | 评论(1) | 转发(0) |
给主人留下些什么吧!~~

chinaunix网友2011-03-08 14:14:09

很好的, 收藏了 推荐一个博客,提供很多免费软件编程电子书下载: http://free-ebooks.appspot.com