8085Aのアドレス・ラッチのために (8212ではなく)74HC573 を使う・・・
というのは、前回 決めました。
三菱の M5L8085AP は内部が N-MOSで 信号はTTLレベルです。ここにこのICを接続するのは、そのままではちょっとマズイ理由を丁寧に説明しておきます。
TTLレベル 出力 ⇒ C-MOSレベル 入力
インターネット上には Wikiを始め さまざまな解説が載っていますが、中には間違った説明や、データが古い説明も 多々 見受けられますので・・・
まずは、実際に使う HC573のデータシートを眺めてみます。
電源電圧5Vで使うので、横の行は Vcc=4.5Vの所を見ます。 それも最悪値-6mA流した所を!(電圧が5V→4.5V まで低下しても 保証しますよ!とう意味で4.5V で測定した結果です。 よってここが5Vの数値)
縦の列は、周囲温度(TA)が 25度 の所で十分なのですが、環境温度 -55°C(北極か?)~ 高温125度(月の地表面でしょうか?)でも 動くように、VOH,VOLは 最悪値の方を使ってみましょうか?
分かりやすいよう 図に すると、こんな感じ ↓
C-MOSの素子の 出力は、Hiの時 3.7V以上もの電圧を出す事を保証し、Lowの時は0.4V 以下にすることを保証してくれます。 逆に入力は Hiと判断するのに 3.15V以上ないといけないし、Lowと判断するには 1.35V以下にしないといけません。
ここまではいいでしょうか? Are you understand?
TTLレベルの時と比べて、かなり改善されている。(特にLow側が) ノイズマージンも幅が増えているのがわかります。 Hi側と Low側 どちらかに偏らないよう均等にレベルを振り分けたのが見て取れますね! また、電流を出すのが弱かったTTLに比べて、C-MOSは 電流吐き出し時も(電流吸い込み時と)同じ電流を出力できるよう改善されています。
よって、LED点灯駆動をさせる時、ソースでも、シンクでもどちらでも同じ条件で使えます。(±20mA程度 流せる&取り出せる素子が多い)
良い所だらけの C-MOS部品です。 C-MOS同士を接続する分には、そのまま繋げば良いのですが、
TTLレベルのCPUが出力の所に C-MOSをつないだ場合、どうなるでしょうか? TTLレベル図 ↓ を再掲載 :
TTLの Hiの出力は 2.4V しか保証されないのに、C-MOSの入力は 3.15V以上ないと いけないことになっています。(0.75V 足りない!)
そうなんです、そのためにTTL-CMOSレベル変換なんてICもありますが、おおげさ過ぎるので プルアップ抵抗を付けてこの場を凌ぎます。
ーーーーー
では、プルアップ抵抗は どの位の値が良いのでしょうか?
TTLの吸い込み可能な電流は、-2mAでしたので、抵抗値 2.2K Ωだと 目いっぱいです。 よって、(クロック信号の様な 急激に立ち上がらないといけない信号を除いて)こんな小さな値を使うことはありません。
抵抗値 4.7K Ωだと その電流の半分 約1mAなので良い感じです。ただし、抵抗値が小さいということは、これも電力を食うことになり 省エネにはなりません。 1個なら1mA でも 8本で8mA(あたりまえか? ビットが増えれば増える程 電気を食う基板になってしまいます)
抵抗値 10K Ωだと さらにその電流の半分 約0.5mA。 22K Ωだと 約0.25mA。 これで十分。 だからこの手の値の抵抗が使われます。
つなぐ相手(TTL ICの個数)が多ければ、この位の値でないといけないのですが、C-MOSの場合 入力はほとんど電流を消費しません。 よって、さらに倍の 47K Ωだと 約0.125mA でも 十分 電源電圧に近い所まで プルアップされます。 今回は 47K Ω-8素子の集合抵抗を使っておきます。
このプルアップ抵抗、TTL同士の接続であれば(要は 74LS573 を使うのであれば)もちろん 必要ありません。 また、CPUが 80C85Aのような C-MOSのCPUを使うのであっても(TTL同士の接続なので)、これまた 必要ありません。 必要なのは 種類の違う素子が混在している時のみですが、
C-MOSレベル 出力 ⇒ TTLレベル 入力
の場合も、必要ないんです! 理由は、自分で検証してください。
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
ーーー ここでちょっと昔話・・・ 長文なので適当に読み飛ばし を!
大昔、回路を1つ1つトランジスタで組んでいた時代がありました。
あまりに 大変なので、標準の部品を作ろうと思い立った人が居て、今の TTL等のICが出来ました。 14ピン ~ 20ピンの標準ICと呼ばれるもので、
74??? と
先頭に74と数字を付け???の部分の番号でその種類を決めていました。
例えば、7404 は インバータ(Hi と Lowを反転させる)IC
(頭のSNとかは 製造した会社名なので無視、最後のNは改造種類)
左下が1番ピン(この04だと7ピンx2=14ピンなので)、右下が7番ピン(この右下の端っこのピンがGND)、左上=ここでは14番ピン(最後のピン)が Vcc =つまり +5Vの電源と決められて、どの会社の製品でも同じピン配列に統一したため 大変 便利で おおいに普及しました。
トランジスタと抵抗で作るより、かなり楽が出来たので 「回路を組む」と言えば、この「標準ロジックICを組み合わせて作る」のが 当たり前になっていました。
ーーー
いろんな要求に答えて行くうちに この標準ロジックICの種類もどんどん増えていき(番号が600番台とかに)、しかも 動作のスピードが速いものが必要になって来て、
74F??? と
いった 動作速度の高速(Fast)なタイプが出ました。
ただ、あまりに電気を食うので 熱っちんちんに焼ける代物。 ショットキーバリア (Schottky barrier)を使って 速いけど消費電流も少なめな、
74S??? となり
改良された、
74AS??? とか、
さらに電気を食わない(Low)
74LS??? が出て
これが かなり普及しました。 (↑ しばらくは ほとんどこれが使われた)
その改良された、
74ALS??? も。
ーーー
そして、時代は進み さらに電気を食わない C-MOSタイプが ちらほら登場して来ます。
74HC??? ↓
出た当初は、
○ 静電気に弱くて 壊れやすい とか
○ 動作速度が遅い! とか
色々あって なかなか評判がわるかったのですが・・・
(実際、素手で触って壊れる事もあったし、電源を逆差しすると かなりの確率でC-MOSのICは壊れていました)
今では、かなりの部分が C-MOSの素子に置き換わってますね。 とにかく 電気を食わない!(熱くならない) そして、動作スピードも格段に速くなっているし、何より丈夫で壊れにくくなってますね。
改良型の、
74AC??? とかも
C-MOSのICです。(とにかく C の文字が何処かに入る)
ーーー
TTLレベル と C-MOSレベルとで ここで説明したように レベルが合わないのを取り持つためのIC
74HCT??? とか
74ACT??? とか
も出ています。 (入力がTTLレベル で 出力はC-MOSレベル)
ここまで来ると 頭の74は共通なので、通常 省略して LS04 とか HC04 と呼ぶのが一般的です。 技術者の間では・・・ プロっぽいでしょう。笑
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
C-MOSの場合、電源が最低2Vでも動作するので、乾電池2本=3Vで十分に動きます。 また 1.5Vの電池4本で 6Vになってしまいますが、その電圧でも問題無く動きます。(TTLは通常 Max 5.5Vまで) いっその所 C-MOSだけで回路を組みたい所ですが「レトロ」電子工作では、そうもいきません。
電池駆動が当たり前になっている現在、さらに電気を食わなくて かつ 速い素子が出て来るんでしょうね。
ICの歴史・・・ 雑学でした。
それにしても こんな専門的で長い話
誰が読むのだろう? 興味ある人など居るのかな?? 😂