2016-06-30 6 views
0

私は論理回路図を持ち、入力から出力には多くのレベルがあります。私は各出力に対して簡略化されたブール方程式を見つけたいと思います。間違いを避け、効率を上げるために、大きな回路図を論理ゲートごとに1つのブール式に分解し、ブール方程式のセットを簡略化し、選択した項の出力を出力として指定できる単一の式を出力するツールを見つける。ブール方程式のセットを組み合わせる

すべての数学的プログラムは問題ありません。お手伝いください。ありがとう!

答えて

0

このような場合は、Logic Friday 1をお勧めします。 ゲート回路図として回路を入力することができます。 Logic Friday 1は、入力を最小化されたsum-of-productsフォームに変換します。また、この2レベルのフォームを複数レベルのゲート・ダイアグラムに変換することもできます。

マルチレベル回路の簡素化は簡単ではありません。入力数が多い場合は、膨大な数の未使用量(=総和)で終わることがあります。 local transformationsの回路を簡略化する方が簡単です。同じ数のゲートを、同じ機能を実装するより簡単なサブ回路で置き換えます。例:AND(AND(x、y)、z)はAND(x、y、z)と等価です。また、同じ機能を実現する回路内のノードを探して除去することができます。

は、の最速回路を探してはいけません。これは、入力と出力の間に最小の遅延を持つ回路です。遅延の最小化は、達成するための非常に微妙な目標であり、使用可能なゲートタイプの遅延特性に依存します。

代替ツールはbc2cnfです。このコマンドラインツールは、ゲートネットリストファイルを合計積和CNFファイルに変換します。このCNFファイルは、SAT solverを使用して解くことができます。すべての解は、積和形式の1分に相当します。したがって、これは単純なマルチレベルフォームを直接表示するわけではありませんが、回路の機能を検証するのに役立ちます。

関連する問題