離散論理設計


11

私は単純な警報装置の構築を任されてきました。いくつかの入力を測定するだけで、出力はそれに応じて応答します(非常に簡単に言えば!)。私には、いくつかのディスクリートロジックゲートを使用すると仕事が完了するように見えましたが、同僚(私と一緒に作業していた)が代わりにプログラマブルロジックを使用することを決定しました。第一に、彼は私よりも年上であり、第二に、彼の主な主張は、プログラマブルデバイスが未来であり、未来を保証する製品を作りたいというものだったからです。

私の質問は、いくつかのディスクリートロジックゲートで簡単に実装できるデザインがある場合、ディスクリートロジックでデザインする価値はありますか?プログラマブルよりもそれらを使用する利点はありますか?または、プログラマブルロジックによって徐々に完全に段階的に廃止されますか?明確にするために、「私はこれが事実だと信じている」または「個人的にはこれだと思うが...」の答えは望んでいません。最近の家電製品でデザインする価値はありますか?


16
これは90年代からの質問のように聞こえます... µCは勝ちました。スペース消費は言うまでもなく、半ダースのICをどのように接続するかを考えるよりも、1つを叩いて実行する方がはるかに簡単です。
PlasmaHH

9
個別のゲートには1つの大きな利点があります。ツールチェーンはありません。
ジャンク

ツールチェーンがありませんか?@jonkの意味
好奇心が

@PlasmaHHだから、基本的にあなたは将来的にディスクリートを設計することに利点はないと言っていますか?
好奇心が

11
@jonkの意味は、マイクロコントローラーを使用する場合、使用するマイクロコントローラー専用のIDE(グラフィカルまたはテキストユーザーインターフェイス)やコンパイラ/リンカー/その他のツールの組み合わせなど、マイクロコントローラー用のプログラムを作成するソフトウェアが必要ですツールチェーン。
ミシェルケイツァー

回答:


15

個別の論理設計は完全に段階的に廃止されることはありません。ディスクリートロジックICの使用が望ましいアプリケーションは常に存在します。指摘されているように、速度は大きな利点ですが、多くのアプリケーションでは速度の違いはそれほど重要ではありません。

設計段階では、回路内の異なるポイントで2つまたは3つの単純な論理関数のみを実行する必要がある回路を設計する場合は、ディスクリートゲートを使用することをお勧めします。プログラムも。

より複雑な論理関数を実行する必要があるシステムの場合、真理値表の作成に時間を費やし、小さなプログラムを書くことができる場合にどの論理ゲートがどこに行くかなどを把握するのは馬鹿げています。通常、入力が多いほど、必要なゲートが多くなり、ディスクリートで設計するのに時間がかかります。

しかし、個別のロジックが実際に利点を持っているのは学習です。論理設計やゲートの仕組みなどを初めて学習するときは、実際の論理ゲートを実際に使用して、個別のパーツでさまざまな機能を設計することが重要です。ファンダメンタルズを理解することを常にお勧めします。ですから、そのために、離散論理は常にこの世界に存在するでしょう。家電は?未来は間違いなくプログラム可能です。


シンプルな答え、良い点、そして尋ねられたすべての質問に答えます!ありがとう!
好奇心が

エレクトロニクスのバックグラウンドを持つプログラマーとして、真理値表を作成しないと、真理値表をセットアップするのに必要な時間と同じくらいプログラムのデバッグに時間を費やすことになります。真理値表は、プログラムの素晴らしいドキュメントになります。
chthon

ええ、私は同意します、真理値表は常に有用です。答えを編集して、このシナリオに少し関連性を持たせるようにします
MCG

1
ディスクリートロジックを使用して実装した最後のデザインには、5Vロジックを使用した「可能な限り低い」タイミング要件と、比較的単純なプログラム要件がありました。素敵な光沢のあるFPGAに多額のお金を費やすか、単に「旧式」の方法でそれを行うことができます。ミリタリースペックのチップはピコ秒でフル電圧スイングを経験し、ゴキブリと一緒に核の黙示録を生き延び、またほとんど費用がかかりません。ディスクリートロジックの場所は常に存在します。
ランダック

14

私はプロの電子技術者ではありませんが(実際は初心者です)、タイミングが重要な場合、またはプログラマブルロジックを使用しないことが要件である場合にのみ、専用のディスクリートロジックICを使用する必要があるという点があります。

マイクロコントローラーを使用すると、はるかに複雑なロジックを実装でき、より柔軟になります。また、ハードウェアを変更せずに再プログラムできます。

また、ソフトウェアが対応できない非常に高速なタイミングが必要な場合は、専用のロジックICを使用できます。ただし、アラームシステムの場合、これは不要と思われます(ナノ秒の応答時間は必要ありません)。

以下は、長所/短所の私の解釈です。

                          Discrete logic (ICs)      Programmable logic/
                                                    (Microcontrollers)
 Nanosecond speed                  x                         -
 Just a few 'operators' needed     x                         -
 No tool chain needed              x                         -
 Cost Efficiency *                 -                         x
 PCB / proto size                  -                         x
 Flexibility for changing          -                         x
 Production cost                   -                         x
 Possibility to extend features    -                         x

* Assuming more than a few (different) logic functions needed

1
あなたの意見では速度が主な利点ですか?答えは+1です。私は特にあなたのテーブルが好きです!
好奇心が

1
はい、ハードウェアはソフトウェアよりも高速です。したがって、本当に速度が必要な場合は、ハードウェアICが必要です。ところで、今日ではより複雑な速度に敏感なソリューションのためにFPGAが使用されています。
ミシェルケイツァー

1
FPGAを使用する予定はありませんでしたが、ヘッドエンジニアは既にハードウェアを決定しています!好奇心から質問をして、どこにアドバンテージがあるのか​​を見てみました。ところで、他に答えが出なければ、私はあなたの答えを時間内に受け入れます。早めに受け入れる前に、他の人に答える機会を与えたいだけです!
好奇心が

5
ヘッドエンジニアが適切な決定を下したと思います。アラームシステムは通常、拡張され(複数のソースからより多くの入力を取得し、それを処理する)、それらの組み合わせを行い、後で自動SMSの送信、ビープ音/アラーム信号の通知、またはセンサーなど
ミシェルKeijzers

2
@MichelKeijzersの最新のFPGAは、従来のディスクリートロジックICで実現できるものよりもはるかに高速です。
Tustique

10

商用製品を作成する場合、「プログラム可能」であるか、より上級の同僚が提案したため、設計を選択するべきではありません。代わりに、各設計に関連するリスクコストを推定し、最も低いコストと許容可能なリスクレベルを持つものを選択する必要があります。はじめに:

  • 個々のコンポーネントの価格がコストに追加されます
  • 必要なPCBサイズと複雑さがコストを増加させる
  • 必要な設計作業とツールがコストを追加します
  • 必要なテストと認証がコストを追加します

  • 柔軟性の欠如(新しいPCBを必要とするディスクリートロジックの変更など)はリスクです
  • チーム内の特定のテクノロジーの経験不足はリスクです
  • プロジェクトの要件(目標消費電力など)を満たせないことはリスクです

特定のプロジェクト用にディスクリートロジックICを調達する方が安価な場合、チームはそのような設計の経験があり、柔軟性の欠如は重要ではないと考え、ディスクリートロジックを使用しない理由はありません。


本当です。それでは、ディスクリートロジックの未来はあると思いますか?
好奇心が

4
@Curious個々のBJTとMOSFETが、あちこちで基本的なロジック機能を実装するために使用されているのを見ています。離散ロジックは、いくつかの単純なタスクの便利な抽象化であるため、完全に消えることはないと確信しています。
ドミトリーグリゴリエフ

7

他の答えが忘れている1つの側面は安全性です。離散論理回路は、はるかに複雑なマイクロコントローラ設計よりも信頼性が高い方法です。私は水素のプロトタイプカーの構築を手伝い、すべての安全回路はディスクリートロジックを使用して設計されました。安全性と信頼性は、アラームシステムの設計を検討する必要がある側面です。


3
これは一般的に真実ではありません。プロセッサ上に恐ろしく安全でないディスクリートシステムと非常に安全で堅牢なシステムを構築できます。あなたのチームにはプロセッサを使用するスキルがありませんでしたが、これは本質的に安全ではありません。プロセッサ内で大規模な複製を行うことができますが、これはディスクリートシステムでは実用的ではありません。
awjlogan

1
@awjloganこれらの両方を行うことができますが、予期しない条件によって別の部分が無限ループに送られたため、ディスクリートロジックの緊急停止がアクティブになることはありません。安全性が重視されるシステムは、できるだけシンプルでなければなりません
user253751

1
@immibisそれは悪い設計と仕様であり、プロセッサに固有のものではありません。システム、ディスクリート、FPGAなど、あらゆるものに障害が発生する可能性が常にあります。フェールセーフはできる限りシンプルであるべきだということに同意しましたが、それはそれらが離散的である必要があるという意味ではありません。
awjlogan

5
@immibisディスクリートロジックは、はんだ付けの欠陥だけで、特定の設計サイズを超えるMCUよりも信頼性が低くなります。また、ディスクリートロジックにトリガーが含まれる場合、ソフトウェアで行う場合と同じように、システムの禁止状態とまったく同じ問題が発生します。
ドミトリーグリゴリエフ

4
個別の部品は、障害が発生した場合に、より予測可能に機能する可能性があります
...-rackandboneman

4

私は、いくつかの複雑な組み合わせロジックといくつかのタイマーを行う必要があるときはいつでも、ディスクリートロジックをまったく気にしませんが、常に ATtinyの最小限のアセンブラープログラムをコーディングしなければなりません(それらがよければ、PICを使用してください)。

組み合わせロジックは、最大20行のアセンブラー(複数のルックアップテーブル)です。各ソフトウェアタイマーは、さらに10行を追加します。さらに少ないハードウェアタイマー。A / Dコンバーター、コンパレーター、PWM生成を搭載しているという利点が必要になります。

唯一の欠点は、この部分をフラッシュする必要があったことです。時々それはショーストッパーですが、それはめったにありません。大きな利点は、ボード上のスペースがはるかに少なくて済み、配線がはるかに簡単になり、必要に応じてロジック機能を簡単に変更できることです。


個別のロジックICの残りのユースケースは、1µsよりも速く動作する必要がある場合です。


ちょっとしたトピックですが、ATTiny x17 / x16パーツには2つの3入力LUTが組み込まれています。本当にとても便利です!
awjlogan

4

最終製品-消費者向けデバイスについて話している場合、おそらくディスクリートロジックの利点はそれほど多くありません。例外は、悪条件に対して非常に堅牢である必要があるか、または完全に特徴付けることが非常に簡単なもの(実際の複雑さと隠されたバグの可能性はファームウェアベースのものではるかに高い)、または今後数十年間、同様の部品を使用します(技術の文字が変わっても、74xxのフットプリントは非常にゆっくりと変化します:))。

あなたが実際にディスクリートでより良くできることは、自己タイミングの非同期ロジックです(あるものの完了はすぐに別のものをトリガーします)。このような設計の正当性は、神聖な戦争のテーマです。心配しないでください、同期の人々はあなたに勝つことを望むでしょうが、あなたは彼らの時計を奪う必要があります、彼らは無意味にそれを永遠に待っています。

設計方法論に関して言えば、それはデザイナーの好みのスタイルに依存していると思います。ラストネストビューで文字通りライブに配線できるCPLDデバイス(「何かがカチッと音がするまでピンにタッチしましょう」)また、ホストPCからの電力(ワイヤをピンに接触させたときのスパークをシミュレートし、できれば雰囲気のために)は、ディスクリートロジックを好む人々に好まれます:)

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.