|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
x
ERROR: dynamic type(automatic varaible in this case) cannot be used on the left-hand side of non blocking assignments.
对于这个问题,我的理解是:
动态变量如果使用非阻塞赋值(NBA),那这个赋值的update event就要放在此刻 time slot 的 Re-NBA region 来执行,而程序段中需要在同一时刻运行(判定?)的其它语句所代表的 event 可能会在前面的 Reactive region 或者 Re-Inactive region 中进行。
而如果使用阻塞赋值的话,阻塞赋值的 update event 会在 Reactive region 执行。
所以,使用 NBA 和 BA 会导致程序运行结果不同,可能会违背编程者的意愿,为了规避这种可能,compiler 拒绝使用 NBA 给 Dynamic 类型赋值。
只是我的猜想,请大家讨论。 |
|