Multi level logic synthesis

Logic network

是结构模型 model of structure
在这里插入图片描述

从RTL描述中提取的最初的多级结构开始,一步一步改善它,并保留行为。
一共有五个操作:

Elimination

从网络中移除一个节点
在这里插入图片描述

Decomposition

将一个节点分为两个节点
在这里插入图片描述

Substitution

通过使用额外的输入简化一个局部方程,这个输入不在之前网络中。
在这里插入图片描述

Extraction

发现两个表达式的一个公共子表达式,并将提取出来的子表达式作为一个新方程
在这里插入图片描述

Simplification

简化局部方程
在这里插入图片描述

简化后结果

在这里插入图片描述

Algebraic division 代数除法

在这里插入图片描述
例如:
在这里插入图片描述
在这里插入图片描述

Algebraic division for substitution

R = A − Q · B
= {ka, kb, e} − {k} · {a, b}
= {ka, kb, e} − {ka, kb}
= {e}
Q = {k} R = {e}

在这里插入图片描述

Algebraic division for extraction

发现公共子表达式。
kernel:一个类表示所有除数的一个子集
cube-free:多立方体的代数表达式,其中没有任何立方体和所有其他的立方体共存
co-Kernel:假如f/g,g就是co-kernel,结果就是f的kernel
在这里插入图片描述
为了避免重复,优化后算法:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Algebraic division for decomposition

decompose
例一:
先找到方程 f : ace+bce+de+g
求出方程的kernel set:K = {(a + b),(ac + bc + d),(ace + bce + de + g)}
找到除数和被除数 f/fw: A = {ace, bce, de, g} B = {ac, bc, d}
在这里插入图片描述
结果为:
在这里插入图片描述
例二:
先找到方程的kernel set:
在这里插入图片描述
再找到除数和被除数:A : {ac, bc, d} and B : {a, b}.
在这里插入图片描述
最后结果为:
在这里插入图片描述

Boolean functions

是行为模型 model of behaviour

CDC 和 ODC analysis

包括Externel don’t care(由外界环境产生)和Internel don’t care(由电路本身产生)
在这里插入图片描述

CDC (Controllability don’t care)

SDC (satisfiability don’t care)

SDCx = fx ⊕ x
在这里插入图片描述
第一步:算上外部环境的CDCin为{x’1x‘4}
在这里插入图片描述
第二步:drop x2和x3
在这里插入图片描述
在这里插入图片描述
第三步:找新的输入节点 {x1, x4, a},上一步继承的CDCout = x1’x4‘,结合新节点{b, a, x4}得到新的
C = {x1, x4, a, b}
在这里插入图片描述
第四步:继续Drop x1
在这里插入图片描述
更新cut列表:C = {x1, x4, a, b} − {x1} = {x4, a, b}
第五步:下节点 {b, c},与cut列表合并{x4, a, b, c}.
在这里插入图片描述
最后Cut掉x4和a
在这里插入图片描述
在这里插入图片描述
继续更新cut列表:C = {x4, a, b, c} − {x4, a} = {b, c}
第六步:合并新节点 {d, e} 到新的cut列表C = {b, c, d}
在这里插入图片描述
d因为是void,所以不用consensus。
继续寻找新节点并合并找到新的cut列表:C = {b, c, d, e}
在这里插入图片描述
这时可以cut掉b和c:
在这里插入图片描述
在这里插入图片描述
最后找到整个逻辑电路的CDCout。

ODC (Observability don’t care)

在这里插入图片描述
举例:
在这里插入图片描述
在这里ODCe=ODCout

先计算节点b和c的ODC
在这里插入图片描述
最后计算x1的ODC
在这里插入图片描述
其他输入节点也可以进行同样的操作。

Boolean methods for :

simplification

简化:一个用尺寸更小的等效局部函数表示的方法

substitution

举例:fq = a + cd fh = a + bcd + e
计算SDC
在这里插入图片描述

replacement

计算两个方程之间的不同
举例:
计算difference:δ = f ⊕ g
计算don’t care:DCf = CDCf + ODCf 前提是δ ⊆ DCf
所以,当f和g的不同δ包含在DC set中,可以替代。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值