2
ラムと,知らない人が書いた C ++のプログラムでは, でき上がったプログラムの大きさやスピードが違って きます.ハードウェア設計をするときも,ディジタル IC の内部の動作を理解しているかどうかによって, でき上がるシステムの性能や信頼性は大きく変わって きますそこで,なにをいまさらといわれそうですが,定番 のアナログ回路シミュレータPSpice(評価版)を使っ て,単機能なディジタル IC の内部動作をシミュレー ションして,そのアナログ動作を理解したいと思いま す. ディジタル IC は 1 と 0 の世界で動作しているわけ じゃない 図1 に示すのは,AND 回路と入力と出力の関係で す. 真理値表に示すように,入力 A と B がともに“H” のときだけ,出力 Y は“H”になります.入力がそれ 以外のときは“L”が出力されます. この AND 回路の二つの入力 A と B に,c)のよ うな信号を入力した場合を考えてみましょう.入力信 号は,時刻 0 ~ t A の間は A =“H”,B=“L”,時刻 t A で,同時に反転します. 教科書どおりに AND 回路が動作するなら,出力 Y は変動することなく,“L”のままになるはずです. しかし,実際に作って実験してみると,A と B の極性 が入れ替わるタイミングで,Y が一瞬“H”になるとがあります.これをハザードと呼びます. これは, “L”から“H”,または“H”から“L”に 変化する時間がゼロではないからです.時間軸を広げ てみると,d)のように,AとBの信号の電圧は 徐々に上昇したり下降しています.A と B の両方が “H”になる期間では,Y は“H”になります. このように,すべてのディジタル回路はアナログ動 作しているのです. 201 2003 6 月号 特設記事 はじめに 現代のハードウェアの多くは,マイコンや CPLD, FPGA などの高機能でプログラマブルな IC と,単機 能なディジタル IC の組み合わせでできています. 使い勝手を良くするために,バッファや保護回路を 内蔵したマイコンや PLD もたくさん誕生し,速度な どを求めなければ,IC の単純な組み合わせ作業で, 簡単にシステムが作れる時代です. 昔は,半田ごてを握りながら,目の前にある実際に 動作している回路と接しながらモノ作りをしていたの ですが,今は,ソフトウェア開発や HDL のプログラ ミングなど,パソコンのキーボードを触るだけの作業 がほとんどです.IC のなかで,どんな素子がどんな ふうに動いているかなど,想像したことのない人も多 いかもしれません. アセンブラを知っている人が書いた C ++のプログ DTL,TTL,CMOS の内部動作を シミュレーションで理解する ビギナのためのディジタル IC のしくみと動作 相田 泰志 Yasushi Soda A A H L B H L Y A B Y H L B Y 入力� A B Y L L L L H L H L L H H H 出力� a)論理記号� b)真理値表� c)入力と出力の波形� d)実際に作って動作させると…� 時間� 時間� 時間� 時間� 時間� 時間� t A 〈図 1〉AND 回路の論理の動作と実際の動作

ビギナのためのディジタル ICのしくみと動作 · が入れ替わるタイミングで,yが一瞬“h”になるこ とがあります.これをハザードと呼びます.

  • Upload
    ledien

  • View
    219

  • Download
    0

Embed Size (px)

Citation preview

Page 1: ビギナのためのディジタル ICのしくみと動作 · が入れ替わるタイミングで,yが一瞬“h”になるこ とがあります.これをハザードと呼びます.

ラムと,知らない人が書いたC++のプログラムでは,

でき上がったプログラムの大きさやスピードが違って

きます.ハードウェア設計をするときも,ディジタル

ICの内部の動作を理解しているかどうかによって,

でき上がるシステムの性能や信頼性は大きく変わって

きます.

そこで,なにをいまさらといわれそうですが,定番

のアナログ回路シミュレータ PSpice(評価版)を使っ

て,単機能なディジタルICの内部動作をシミュレー

ションして,そのアナログ動作を理解したいと思いま

す.

● ディジタルICは1と0の世界で動作しているわけ

じゃない

図1に示すのは,AND回路と入力と出力の関係で

す.

真理値表に示すように,入力AとBがともに“H”

のときだけ,出力Yは“H”になります.入力がそれ

以外のときは“L”が出力されます.

このAND回路の二つの入力AとBに,図(c)のよ

うな信号を入力した場合を考えてみましょう.入力信

号は,時刻0~tAの間はA=“H”,B=“L”,時刻

tAで,同時に反転します.

教科書どおりにAND回路が動作するなら,出力Y

は変動することなく,“L”のままになるはずです.

しかし,実際に作って実験してみると,AとBの極性

が入れ替わるタイミングで,Yが一瞬“H”になるこ

とがあります.これをハザードと呼びます.

これは,“L”から“H”,または“H”から“L”に

変化する時間がゼロではないからです.時間軸を広げ

てみると,図(d)のように,AとBの信号の電圧は

徐々に上昇したり下降しています.AとBの両方が

“H”になる期間では,Yは“H”になります.

このように,すべてのディジタル回路はアナログ動

作しているのです.

2012003年6月号

特設記事

● はじめに

現代のハードウェアの多くは,マイコンやCPLD,

FPGAなどの高機能でプログラマブルなICと,単機

能なディジタルICの組み合わせでできています.

使い勝手を良くするために,バッファや保護回路を

内蔵したマイコンやPLDもたくさん誕生し,速度な

どを求めなければ,ICの単純な組み合わせ作業で,

簡単にシステムが作れる時代です.

昔は,半田ごてを握りながら,目の前にある実際に

動作している回路と接しながらモノ作りをしていたの

ですが,今は,ソフトウェア開発やHDLのプログラ

ミングなど,パソコンのキーボードを触るだけの作業

がほとんどです.ICのなかで,どんな素子がどんな

ふうに動いているかなど,想像したことのない人も多

いかもしれません.

アセンブラを知っている人が書いたC++のプログ

DTL,TTL,CMOSの内部動作をシミュレーションで理解する

ビギナのためのディジタルICのしくみと動作相田 泰志Yasushi Soda

A

AHL

BHL

Y

A

B

Y

HL

BY

入力�A B YL L LL H LH L LH H H

出力�

(a)論理記号� (b)真理値表�

(c)入力と出力の波形�

(d)実際に作って動作させると…�

時間�

時間�

時間�

時間�

時間�

時間�

tA

〈図1〉AND回路の論理の動作と実際の動作

Page 2: ビギナのためのディジタル ICのしくみと動作 · が入れ替わるタイミングで,yが一瞬“h”になるこ とがあります.これをハザードと呼びます.

昔のディジタルICはとても単機能なので,動作を

理解するのにはとても良い材料です.

そこで,まずディジタルICの内部回路の進化のよ

うすを追いかけてみます.

■ DTLの誕生

最も古いディジタル回路は,リレーを使って作られ

ていました.リレーのONとOFFで0と1を実現する

わけです.

その後,真空管が誕生して主流になりますが,駆動

電圧が高いことや発熱や消費電流が多いことから,簡

単に作れるものではありませんでした.

そして,皆さんおなじみのダイオードやトランジス

タが発明され,トランジスタを使ったディスクリート

のロジック回路が作られ始めます.

最も単機能なロジック IC として作られたのが,

DTL(Diode-Transistor-Logic)です.

図2に示すのは,NANDゲートと呼ぶ論理回路で

す.二つの入力がともに“H”のときに出力が“L”

になり,そのほかの入力条件では“H”になります.

これをDTLで作った回路が図3です.

AとBのいずれかの入力が“L”になると,ダイオ

ードが接続されたトランジスタのベース電位が0 Vに

なり,トランジスタがOFFして出力が“H”になり

ます.

ディジタルICはDTL,TTLそしてCMOSへと進化を遂げた

■ TTLの誕生

図3に示したように,DTLの出力回路はエミッタ

接地方式です.この回路はQ1がONのときは,大き

な電流を引き込むことができるのですが,OFF時は,

内部のプルアップ抵抗RCが邪魔をして,大きな電流

を出力できません.

RLを小さくすれば良いようにも思えますが,ON時

にRCからの電流とRLからの両方の電流がQ1に流れ

るので,負荷から引き込める電流が小さくなります.

この欠点を補うために開発されたのが,TTL

(Transistor-Transistor Logic)です.

図4に示すのは,TTL ICの元祖であるテキサス・

インスツルメンツ社のSN74シリーズのデータシート

に掲載されている内部等価回路です.

図3のRCをトランジスタに置き換えて,DTLの欠

点である“H”出力時の駆動電流不足の問題を解決し

ています.

さらに,入力はマルチエミッタ・トランジスタと呼

ばれるトランジスタが使われています.図5に示すよ

うに,NPNトランジスタのNチャネルを増やしたよ

うなチャネル構造になっています.

■ 74LSや74ASの誕生

DTLとTTLには,高速に動作できないという共通

の欠点がありました.これを補うために登場したのが,

74LSや74ASなどの高速TTLです.

202 2003年6月号

入力A出力Y

4k 1.6k

1k

130Ω�

Y=“L”のときに�流れる電流�

Y=“H”のときに�流れる電流�

入力B

Q1 Q2 Q3

Q4

VCC

〈図4〉TTL NANDゲートの内部等価回路

入力A

出力Y

入力B

Q1

VCC

Q1がONしているときのコレクタ-エミッタ間の抵抗値は  に比べてとても小さいので,入力“H”,出力“L”のとき,負荷抵抗 からグラウンドに向けて,比較的大きな電流を流すことができる.しかし,Q1がOFFのとき(入力“L”,出力“H”)は,  が邪魔をするので,大きな電流を負荷に供給できない�

RL

RL

RC

RL

RC

〈図3〉DTL NANDゲートの内部等価回路

(a)記号� (b)チャネル構造�

A

B

YN

NP N

〈図5〉マルチエミッタ・トランジスタの記号とチャネル構造

AB

Y

入力�A B YL L HL H HH L HH H L

出力�

(a)論理記号� (b)真理値表�

〈図2〉NANDゲートの論理記号と真理値表