同步转换图(STG)合成中分解与展开技术的结合
在STG合成领域,为了更高效地处理复杂的STG,人们不断探索新的方法和技术。本文将介绍STG合成中涉及的冗余转换删除、回溯、树分解、CSC感知分解等关键技术,以及如何结合展开和分解工具来弥补彼此的不足,并通过实验验证这些方法的有效性。
冗余转换删除
冗余转换分为两种类型:
- 相同标签且连接方式相同的转换 :如果有两个具有相同标签且以相同方式连接到每个位置的转换,那么可以删除其中一个而不改变STG的轨迹。
- λ标记且输入输出集相同的转换 :对于一个λ标记的转换t,如果•t = t•,则可以删除它,因为其触发不会改变标记,并且在轨迹层面不可见,而且这对于相邻位置的任何标记都有效。
回溯
并非所有λ标记的转换都能被分解算法收缩,可能有以下三个原因:
- 收缩未定义 :例如•t ∩ t• ≠ ∅。
- 收缩不安全 :这可能会改变STG的语言。
- 引入新的自动冲突 :即引入了规范中原本不存在的新的非确定性潜在来源,这意味着组件没有足够的信息(即输入信号)来正确产生其输出。
如果上述所有缩减操作都不适用,但组件仍然有一些λ标记的转换,则应用回溯。具体操作是选择其中一个λ标记的转换,将相应的信号去λ化,即将此输入添加到初始分区中,然后重新推导并从开始缩减新的相应初始组件。这个缩减和回溯的循环会重复进行,直到初始组件的所有λ标记转换都可以被收缩。
超级会员免费看
订阅专栏 解锁全文
1697

被折叠的 条评论
为什么被折叠?



