|
发表于 2008-1-21 10:09:18
|
显示全部楼层
我的愚见
task的情况比较复杂了,也可以是组合逻辑电路,也可以是时序逻辑(状态机),它完成的是一种封装(仅仅是一种封装),不是特定的东西,仿真中用的比较多.
个人的愚见是task这样的东东在综合方面用处不上很大,因为代码面向综合的时候,基本是RTL级描述和数据流描述(门级描述也有的吧),代码复用比较少.
而在高层仿真中就不一样了,比如一个数字设备的输入输出,可以用两种操作描述,读,写;这样就可以定义read(),write()两个task实现封装,然后在高层仿真中
,也就是类似于c/c++的描述风格中去调用这些task;类似c/c++的高层描述中,向来是讨厌有底层的实现细节的,向什么ddr sdram,单片机的读和写是一个连续的
时序过程(里面有很多延时,以及精确的周期控制等细节),这时候就可以用task来封装了,这样在高层的描述中就看不到那些延时啊,精确周期控制等细节了,可以专注与其他的高层功能仿真. |
|