質問

組み合わせのデジタル回路を分析したいと思います。 ASCIIファイルには、次の形式に従って、回路の説明が含まれています。

<name> <logic gate> <inputs> <outputs> <input 1>…<last input> <output> <delay>

どこ:<name> ロジックゲートの名前が付いた20枚以下の文字列です。<logic gate> ロジックゲートのタイプを識別する20枚以下の文字列です。かもね INPUT, OUTPUT, AND, OR, NOT. <inputs> 入力の場合は0、notまたはoutputの場合は1、2、およびfor、およびor。<outputs> 出力の場合は0に等しい整数、またはそれ以外の場合はGreterです。<input 1>, <last input>, <output>それぞれ20枚以下の文字列であり、ロジックゲートの入力/出力ネットの名前を識別します。<delay> ロジックゲートがその機能を計算するために取る時間を識別する整数です。

プログラムは、回路の説明を含むファイルを読み取った後、回路の臨界パスを計算する必要があります。これは、入力のゲートを接続するパスとして定義できます。パス内では、回路内のすべての可能なパスの中で最高です。

Can anyone please tell me the data structures that are best suited for storing the information the program has to elaborate.
How could i load the the data structure into the memory?

A INPUT 0 1 net1 1
B INPUT 0 1 net2 1
C INPUT 0 1 net3 1
G1 NOT 1 1 net1 net4 1
G2 OR 2 1 met3 net4 net5 1
G3 AND 2 1 net4 net2 net6 2
G4 AND 2 1 net6 net5 net7 2
D OUTPUT 1 0 net6 1
E OUTPUT 1 0 E 1 



In this example the critical path is A/G1/G2/G4/E with a delay of 7.

どうすればこれを促進できますか。

役に立ちましたか?

解決

私があなたの質問を正しく理解しているなら、あなたは本当にあなたが重要なパスを計算するためにあなたがどのアルゴリズムを使用すべきかを本当に知りたいと思っています。これは、「最短の道とは何ですか?」というタイプの質問に似ています。お勧めします Dijkstraのアルゴリズム この問題のために。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top