在前面的练习中,我们讨论了根据输入组合,最简化单输出电路的方法。电路足够的简单使得我们可以使用布尔代数和K图来找出正确的电路最简化描述。但在更多更普遍的情况下,逻辑系统根据相同的输入会产生不止一个的输出。在更普遍更复杂的设计中,“笔和纸”的方法变得有局限性,而使用基于计算机的方法也变得更加势在必行。在实际应用中,一个逻辑系统如果包括有超过5或6个的输入2个或2个以上的输出,那么最好是使用基于计算机的方法来最简化系统。此外,使用基于计算机的工具可以将设计人员从枯燥耗时的设计杂务中解放出来,因此设计者可以有更多的时间来研究设计需求并对不同的设计方法进行充分的实验。在分析完成各种高级别设计方法后,使用计算机工具可以很方便的用最好的那个方法来搭建电路,这些工具有简化器,综合器以及优化器。
在设计过程中使用这些工具时,就必须要求输入输出关系描述的很清楚,并且对工具产生的输出结果进行严格的检查。假设“计算机是一定正确”来设计电路确实很诱人,但是事实上,使用某些CAD工具确实有增加设计错误的可能性,这正是因为这些工具高度抽象了燥无味的结构细节。CAD工具永远不能取代细节设计知识。更多的情况是,它们可以用来劳动力和劳动时间,但其产生的输出结果一定要严格的检查。
如下所示例子中,有一个4输入,3输出的逻辑系统。该设计可以被分割成三个独立的,唯一的逻辑电路,每一个电路都使用相同的四个输入,最后再将这三个电路组合到一起。三个电路都可以互不干扰的独自找出其优化方案,用下标“LM”表示(“LM”表示本地最简化),如下图所示。这种“一次一个”的方案解决方式确实是最简单的,但是它却忽略了可能存在的全局优化方案。明确的说,如果所有的逻辑功能在一起分析,那么就可以找到全局更优化的方案,然后将一到两个独立功能再进行局部优化。对多输出系统的分析从在所有图中列出可能的逻辑组开始,然后在找出所有共享乘积项的子列表。然后在每个可能的等式中使用这些共享乘积项,看是否有更简化的等式存在。完成这一步后,就可以找出一个全局最简化等式了。
如下图所示,绿色环型圈表示了单个图中使用的子-优化组,并用来构成全局最简化式。下标有“GM”的等式中阴影框中的项为其子图独有的乘积项,没有阴影的项表示共享的乘积项。各自独立的最简化方案需要12个门电路和37个输入,而全局最简化方案只需要10个门电路和34个输入。基于计算机的算法,比如espresso,会为多输出逻辑系统自动的查找全局最简化方案。这样的方法比笔-纸的手动方法要更加实用,更加快速,而且产生错误也更少。

<<上一节 下一节>>