2 原理

2.1 デジタルICの種類

基本論理素子(AND,OR,NOT)を素にしてNAND回路やNOR回路ができることは,すでに学んだ.ディジタルICは,これらの回路の組み合わせによって,種々のLogic(機能)を小さいスペースの中に無接点の形で組み込んだ物である. ディジタルICをその構造によって分類すると,次のようになる.

実験で用いるICは,TTL系のICで,スイッチング速度が速く,現在最も多く使われている. 実験では入力パルスの数を計数する機能が要求され,2進1桁の計数(バイナリィカウンタ) 機能を持つフリップフロップ回路(Flip-Flop:以下FFと略す)から構成されるICが用いら れる.FF理論の詳細については,「電子回路」や「情報処理」の授業に譲り,ここでは実 験に必要な最小限の論理を述べる.

2.2 フリップフロップ

FF回路は順序回路(過去に入った情報と現時点に入った情報との組み合わせで決まる論理 回路)の代表的な回路で,二つの安定点を持ち,入力信号の内容によってどちらの安定点 をとるかが決まる一種の記憶回路である.入力端子は一つまたはそれ以上あり,出力は二 つある.出力のQとすれば,Qの否定 $ \bar{\mathrm{Q}}$となる.

FFには入力制御の仕方によって,1:RS FF(Reset Set FF),2:JK FF,3:T FF(Trigger FF),4:D FF(Delayed FF)などがあり,シフトレジスタやカウンタあるいはラッチ回路な どの記憶回路に用いられている.このうちで実験でIC(10進カウンタ機能を持つ:SN7490) は,1と2のFFで構成されているので,次にこのFFについて述べる.

2.2.1 RS FF

RSフリップフロップ回路は,図1に示すように,S(Set)R(Reset)の二つの入力端子を持ち,この入力によって状態が決められ,その状態を 維持する.Sに"1"が加えられるとQは"1" となり,Rに"1"が加えられると Qは,"0"となる.そして出力の状態が決まった後は,入力を"0"にしても出力は変わ らず,そのまま保持される.これが2進1桁の記憶に相当する.ただし,R,S入力がと もに"1"になると,出力は決まらず不定となる.

図 1: RSフリップフロップ




\includegraphics[keepaspectratio, scale=1.0]{figure/counter/RS_FF.eps}
図: 真理値表

入力 出力
R S Q $ \bar{\texttt{Q}}$
0 0 保持
0 1 1 0
1 0 0 1
1 1 禁止

2.2.2 JK FF

JKフリップフロップは,図2に示すような回路で,J,K入力は RS FFS,R入力と同様の働きをし,さらにRS FFで禁止されている入力の 組み合わせ(R=S="1")に対しても動作し,出力が反転する.ただし,このFFは クロックパルスCKを必要とする.すなわち,JおよびK入力に信号が加えられた だけでは状態は変わらず,クロックパルスCが入ったときに始めてJ,K入力によって 出力が規定される.

図3にJK FFのタイムチャートを示す.

図 2: JKフリップフロップ




\includegraphics[keepaspectratio, scale=1.0]{figure/counter/JK_FF.eps}
図: 真理値表

入力 出力
J K CK Q $ \bar{\texttt{Q}}$
0 0   保持
0 1   1 0
1 0   0 1
1 1 \includegraphics[keepaspectratio, scale=0.5]{figure/counter/fall_timming.eps} 反転

図 3: JKフリップフロップ
\includegraphics[width=30mm]{figure/counter/JK_FF2.eps}

2.2.2.1 注意

JK FFが図3のように表現されているときの動作について,注意をしておく.

ここで,SET,CLR入力は,J,K,CK入力より優先する.すなわち,CLR入力 を"0"にしておくと,J,K,CKに何を入力しても無効となり,Q, $ \bar{\texttt{Q}}$ は"0","1"に固定されてしまう.SET入力も同様,"0"にしておくと, Q, $ \bar{\texttt{Q}}$は"1", "0"に固定されてしまう.したがって,J,K,CK 入力を使用する場合は,S,R入力は常に"1"にしておくことが必要である.

4にJKフリップフロップのタイムチャートを示す.

図 4: JK FFのタイムチャート
\includegraphics[keepaspectratio,scale=0.8]{figure/counter/chart_JK_FF.eps}
本実験で使用する型名7490のICは図5に示すような外観で,その内部 は図6に示すように3個のJK FFと1個のRST(トグルRS)FFとから構 成されている.図6から明らかなように,INPUT側の第1段のJK FF 1個が2進カウンタとして働き,次段以降のFFで5進カウンタを構成している.

図 5: 7490型ICの外観
\includegraphics[keepaspectratio, scale=1.0]{figure/counter/view_7490.eps}
図 6: 7490型ICの内部構成
\includegraphics[keepaspectratio, scale=1.0]{figure/counter/internal_7490.eps}

これを10進カウンタとして動作させるためには,2進カウンタの出力Q$ _A$を5進カウンタ の初段のFFクロックパルスとして(図6のCK端子は 端子と同じ) 加えればよい.図5の外観図によれば,Q$ _A$端子は12ピン,CK端子は 1番ピンであるから,この両端子を接続することで10 進カウンタとして動作させることが できる.

次に,検出回路に使用する型名7447のICについて述べる.このICは,7セグメントの数字 表示器を表示するためのドライブ回路と,2進(BCD:Binary-coded Decimal)数を数字表示 器の入力信号に変換するためのデコーダ回路から構成されている.図 7にその外観,図8に,数字表示器との接続を示す.

図 7: 7447型ICの外観
\includegraphics[keepaspectratio, scale=1.0]{figure/counter/view_7447.eps}
図 8: 7447型ICと7セグメント表示器
\includegraphics[keepaspectratio, scale=1.0]{figure/counter/7447_7seg.eps}

8の接続図において,A〜DにBCD数を入力すると,a〜gにはBCD数に 対応した信号が表れ,数字表示器を表示する.例えば,A〜Dが"1100"(10進数で3)ならば, a,b,c,d,gに電流が流れて"3"と表示される.表示例を図9に示す.

図 9: 7セグメントの表示
\includegraphics[keepaspectratio,scale=1.0]{figure/counter/view7seg.eps}

ホームページ: Yamamoto's laboratory
著者: 山本昌志
Yamamoto Masashi
平成17年10月21日


no counter