デジタル回路
一方、波形の立ち上がりと立ち下がりで論理遷移の値を意図的に異なる値とすること(ヒステリシス、履歴現象)で異常状態を回避する方法があり、シュミットトリガと呼ばれる。抵抗器の接続により容易に実現可能であるほか、専用の汎用ロジックICもある。
VddとVccは電源電圧を意味する。TTLの電源電圧の許容範囲は4.75-5.25Vである。
電源電圧が同じCMOSとTTLが同一回路上に混在している場合、CMOSの出力をTTLに入力することは問題ないが、その逆はTTLのHレベル出力電圧の下限がCMOSのHレベル入力電圧の下限を満たさないため、誤動作する可能性がある。このようなときは、TTLの出力をプルアップするなどの処理が必要となる。
初期のデジタル回路では、シリコン基板上へのトランジスタの形成の制限によりPMOS、又はNMOSにより回路内部を構成していた。この場合、入力がLowの時にはあまり電力を消費しないが入力がHighの時には大きく電力を消費する、又はその逆の特性を持つため、この都合に合わせてアクティブ・ハイで論理回路を設計するか、アクティブ・ローで論理回路を設計するかが消費電力削減には重要な意味を持っていた。
アナログ回路と比較したときのデジタル回路の利点は、伝送された信号がノイズによって劣化しても、あらかじめ見込んだ許容範囲内ならば、ディジタル的に表現された情報は劣化することなく伝送できるという点である。例えば、連続な音響信号も1と0の並びとして伝送すれば、ノイズが1と0を区別できなくするほど大きくない限り、誤りなしで元の音響信号を再現することができる。アナログ記憶されているLPレコードが直径12インチ (30cm) で収録時間30分に対し、直径12cmのコンパクトディスクには約1時間分の音楽を録音でき、その記録は約60億個の1と0で構成されている。
デジタルシステムでは、より正確に信号を表そうとするとより多くのビット数を必要とする。すると信号を処理するのにより多くのデジタル回路が必要となるが、個々のビットの処理に必要なハードウェアは同種のものである。アナログシステムで分解能を上げようとすれば、回路の線形性やノイズ特性といった根本的な改善が必要となる。
コンピュータ制御のデジタルシステムはソフトウェアで制御され、ハードウェアを改造しなくとも機能を追加できる。この場合の機能追加は工場の外で行われ、製品のソフトウェアをアップデートすることで行われる。製品設計に問題があったとしても、顧客が自分の手で後から修正することも可能となる。
情報の格納はアナログよりもデジタル回路の方が容易である。デジタルシステムのノイズ耐性により、格納して取り出す際にもデータが劣化しない。アナログシステムでは、経年劣化や磨耗によってノイズが蓄積し、格納されている情報が劣化する。デジタルシステムでは、そのようなノイズが一定のレベル未満であれば、情報を完璧に復元できる。
最も単純な順序回路としてフリップフロップがあり、二進法の数字または「ビット」を保持することができる。
順序回路は有限オートマトンとして設計することが多い。その場合、システムの大まかな振る舞いを設計すれば論理関数の詳細を考慮せずにシミュレーションで検証できる。
順序回路はさらに2つに分類でき、クロック信号で駆動することで状態が一斉に変化するクロック同期システムと、入力の変化に伴って変化が伝播していく非同期システムがある。同期順序回路はフリップフロップのような非同期回路で構成されていて、それらがクロック信号にあわせて状態を変化させるようになっているため、タイミングマージンの設計には注意が必要である。
同期順序状態機械を実装する一般的な方法は、それを組合わせ回路部分と「状態レジスタ」と呼ばれるフリップフロップ群とに分けることである。クロック信号のパルスの度に状態レジスタが組合わせ回路の以前の状態から生成されたフィードバックを捉え、状態機械の組合わせ回路部分への不変の入力としてそれをフィードバックする。クロック周波数をどれだけ上げられるかは、組合わせ回路で最も時間のかかる経路によって決まる。
状態レジスタは単に二進数の数値を表している。状態機械の状態に番号を振れるとすれば、論理関数は次の状態の番号を生成する組合わせ回路だと言える。
それに対して非同期システムはありうるタイミングを全て考慮し、あらゆる状態を考慮しなければならず、設計が難しい。
出力をハイ・インピーダンスにできる出力回路はスリーステート(三状態の意味)と呼ばれる。また、入力信号をそのまま出力する、信号を出力しない、ハイ・インピーダンスにするかの三状態に切り替えることができる回路は「スリーステート・バッファ」と呼ばれる。回路記号では、バッファを示す三角の印の側面にハイ・インピーダンスにするか否かの入力信号線が入る図形で示される。トライステートとも呼ばれるが、ナショナル セミコンダクターの商品名で、米国では"TRI-STATE"は商標登録されている(登録番号0941335・2138646)。なお、日本で「トライステート」「TRISTATE」は他者が登録している(登録番号 第2671297号)。
出力をハイ・インピーダンスにしないことを指示する入力信号線は、ゲートの意味で「G」と表記されたり、イネーブルの意味で「E」または「EN」と表記されることが多い。また、データバスなどのバス構造を持つ部分に使われる場合には、アウトプット・イネーブルの略で「OE」という記号が使われたり、チップ・セレクトの略で「CS」という記号が使われることも多い。
スリーステート・バッファを2つ組み合わせて、データ通信の方向を切り替えることができるようにした回路もよく使われている。