什么是Unate cell(单调单元)?

我们来了解一下在数字设计,特别是设计自动化领域中非常重要的Unate cell(单调单元)

数字电路设计实际上大部分工作都是将输入代码转化为输出代码的Code2Code操作。关键在于如何让计算机理解我们想要的结果。

什么是Unate Cell?

Unate cell是一种简单表达**“输入值变化对输出值逻辑特性的影响”**的方法。

在进行逻辑综合(Logic Synthesis)可测试性设计(Design For Testability)自动测试向量生成(Automatic Test Pattern Generation)等EDA工具开发时,Unate cell非常有用。这在STADFTDV等许多领域中都有广泛应用。

首先,我们需要了解Edge的概念。

如下面的图所示,0->1称为上升沿(rising edge)1->0称为下降沿(falling edge)

Unate cell 主要分为以下三种类型:
  1. Positive Unate cell(正单调单元): 输入Edge和输出Edge相同,或者没有变化。
  2. Negative Unate cell(负单调单元): 输入Edge和输出Edge相反,或者没有变化。
  3. Non Unate cell(非单调单元): 输入Edge和输出Edge有时相同,有时相反,因此不具有Unate特性。

Positive Unate为例,

例如,对于**2-input AND Gate(与门)**来说,

(1) 当 AB 都为 0 时,输出为 0

(2) 当 A0 变为 1 时,输出仍然保持 0

(3) 当 A1,且 B0 变为 1 时,输出从 0 变为 1,与输入Edge的变化相同。

(4) 在 A1 的状态下,若 B1 变为 0,则输出同样从 1 变为 0,与输入的变化一致。

(5) 当 B0 时,即使 A1 变为 0,输出仍然保持 0

BufferANDOR 门都是正单调单元(Positive Unate cell)


负单调单元(Negative Unate cell) 是指输出Edge与输入Edge相反或保持不变的逻辑特性。

反相器(Inverter) 是典型的负单调单元(Negative Unate cell),输出的Edge与输入相反。


NAND Gate(与非门) 为例进行简单说明,

(1) 假设 AB 都为 1,此时输出为 0

(2) 在 B1 的状态下,将 A1 变为 0,输出则从 0 变为 1,输出Edge与输入Edge相反。

(3) 当 A0 时,即使将 B1 变为 0,输出仍然保持为 0

INVERTERNANDNOR 门是典型的负单调单元(Negative Unate cell)


另一方面,XOR Gate(异或门) 是典型的非单调单元(Non Unate cell)

简单来看,也是如此,对吧?

  • A=0B=0 时,输出为 0
  • A=0B0 变为 1 时,输出从 0 变为 1

  • A=1B=0 时,输出为 1
  • A=1B0 变为 1 时,输出从 1 变为 0

这是一个不具备单一特性的Cell。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值