標準TTLだけ(!)でCPUをつくろう!(組立てキットです!)
(ホントは74HC、CMOSなんだけど…)
[第136回]

●試作基板の部品実装作業にとりかかりました

いよいよハンダ付け作業の開始です。
最初に作った試作1号の2枚の基板は、ICもLEDも抵抗もいきなり全部実装して、ハンダ付けしてしまってから動作テストにかかりました。
しかし今回は、もう少し慎重にことを運ぶことにしました。

先回も相当に大きな基板でしたが、今回はとにかく大きすぎます。
いきなり全部実装してしまって、それから動作テストにかかったりすると、多分回路のミスをみつけるのに大変な労力が必要になってしまうと思います。
それに、今回は「組立キット」として商品化する前提での作業です。

パーツを実装する順番も考えて、少しずつ無理無く作業を進めていけるように、考えなければいけません。
これだけのボリュームのものをいきなり全部実装してハンダ付けまでしてしまうのは、ちょいと無謀です。
順番に少しずつ完成させながら、その都度動作確認もできるように進めていけば、作る楽しみもより味わえるのではないでしょうか。

●まずはクロック発振回路の実装です

ということで、まずは心臓部、水晶発振回路と、マシンクロックの発生回路を実装します。
当初はCPUクロックを4MHz(水晶発振は8MHz)で考えていましたが、74HC126を使わなければいけないところを、74HC03や74HC05を使ってしまったために、余計に遅延時間がかかってしまい、クロックを落とさなければならなくなってしまいました。

そこで今回は発振には4MHzの水晶を使い、CPUクロックはその1/2の2MHzにしました。
オリジナルの8080がこのくらいのクロックだったと思いますから、これで無事動作してくれれば、まずまずというところなのでしょうが、はたしてどうなるでしょうか…。

もしも2MHzでも間に合わない回路がでてきた場合には、74HC03、74HC05を74HC126に置き換えるなどの対策が必要になります。
今回は少しずつ実装して、その回路が確実に動作することを確認しつつ、作業を進めていきたいと思っているのですが、それにはそのように、ロジックは正しいけれど、高速で実行させるとトラブルが発生してしまう回路を早めに見つけ出す、といった意味合いもあるのです(そういうことが全く無くて完動してくれれば、ラッキーなのですが)。

実際に作業にとりかかってみると、思ったより時間がかかってしまうことがわかりました。
回路図と配線図(部品配置図)を見比べながら、ターゲットになる回路(まずはクロック発生回路)のパーツをチェックしていきます。
ここは後にドキュメント化できるように、配置図と回路図(それにパーツリスト)のそれぞれに相互の関連がわかる記号をつけながらチェックを進めます。
ここで一番問題なのは、ICがCMOSであるということです。

●絶対にしてはいけないこと

回路図通りにICや抵抗などを実装していくこと自体は、それほど手間のかかる作業ではありません。
しかし、今回は一度に全部のパーツを実装してしまうのではなくて、機能ブロックごとに実装しながら作業を進めていく、という方針です。
ということは、当然作業の過程では、未実装のICや抵抗がたくさん残っている状態で、電源を入れて動作テストをしなければならない、ことになります。
74HCのようなCMOS・ICを含む回路では、これはとても危険な作業です。

●絶対にしてはいけないこと。それは入力端子オープンです

CMOS・ICの入力ゲートはハイインピーダンスです。
回路の途中にあるICなどが実装されていないと、当然入力信号がなくて、入力端子がオープンになってしまうICが出てきてしまいます。
74LSなどでは、入力がオープンでもそれほど神経質になる必要は無かったのですが、CMOS・ICの場合には、入力端子オープンは絶対禁止です。
ずっとずっと以前に「トランジスタ技術」(CQ出版)に連載記事を書いたことがありましたが、その中でこのことについてコメントしたことを記憶しています。

●CMOS・ICが「静電気」で破損する?

当時、「CMOS・ICは非常に壊れやすく、特に静電気に弱いので、CMOS・ICには特別の注意が必要である」などという記事をよくみかけました。
中には、入門書などで、CMOS・ICをさわるときには、静電気による破損を防ぐために、あらかじめ水道か何かの金属配管などに手を触れてから作業をするとか(いまどき金属配管などあるかなぁ?)、素足にクサリを巻いて、それを部屋のどこかの金属部分につないだ状態で、ICのハンダ付けをしなさい、などと、ご丁寧に図入りで解説してあるものまで、見た覚えがあります。

足にクサリだなんて、これじゃまるで中世の囚人です。
逆に感電してしまうんじゃないか、という恐怖を先に感じてしまいます(いまどきまさか、そんなことをなさっている方は、いらっしゃらないでしょうね?)。

筆者がはじめてCMOS・ICをさわったのは、もう35年ほども昔、まだTK80も世に出ていなかったころです。
趣味で電子工作にのめり込みはじめて、まだ日も浅かったころでした。
当時まだめずらしかった、CMOS・IC(沖電気の4000シリーズ)を使って、乾電池で動作する目覚まし時計(デジタル時計が一般の耳目を集め始めた時期でした)を、自分で設計して、製作したときのこと。
感光基板を使って、自分でエッチングして、ミニドリルで穴あけまでして作った自慢の回路です。

それなのに、うっかり勘違いしてICを全部逆向きに実装してしまいました。
それに気づかずに電源を入れたところ、もちろん何も動作せず、不審に思ってICにさわってみたら、やけどするほど熱い(おお、神よ!あるいは、おお、悪魔よ!)。

あわてて電源を切って、調べてみて、やっと自分の愚かな間違いに気がつきました。
でも、なにしろ安サラリーマンの乏しい小遣いの中からやりくりして買い集めた貴重なICです。
捨ててしまうなどというもったいないことはとてもできません。

自分の愚かさをぶつぶつと呪いながら、ハンダ吸い取りアミ線にハンダゴテを当てて、またまたICをちかちかにさせながら、ハンダを吸い取っていきました。
多分だめだろうなぁ、と半ば諦めながら、今度は逆さしに十分注意して実装したあと、電源を入れてみると。
なんと!ちゃんと動作したではありませんか。

この愚かな経験によって、筆者は、当時世上で言われていたほど、CMOS・ICは弱くないことを実感しました。

そして、当時一般に言われていた、CMOS・ICが破損するトラブルは、実は静電気による事故ではなくて、多分、未使用入力端子をオープンにしていたためではないか、と推察したのです(当時、スタンダードのTTLや74LSなどでは、未使用入力端子はそのまま開放しておくような設計が一般的でした)。

今でこそ、メーカーのマニアルなどでも、CMOS・ICの未使用入力端子は開放しないで、VddかGNDに接続するように、という注意書きを見るようになりましたが、当時は(メーカーのマニアルなど見たことはありませんでしたから、雑誌記事などでの話ですけれど)、静電気による破損に気をつけよ、ばかりで、「端子オープン」に対する注意は一般的ではなかったように思います。

そこで、その後「トランジスタ技術」誌に連載記事を書くことになった、その記事の中で、「CMOS・ICは静電気よりもまず端子オープンに注意を」と書いたのです。
もっともこのことは、筆者が思いついたことではなくて、当時電子回路について、教えてくれていた、ハムをやっていた先輩でした。

「CMOS・ICの入力端子をオープンにしたままにしておくと、ときたま勝手に発熱して破損してしまうようだ」
「多分、入力がハイインピーダンスであるために、スレッショルド付近でふらふらして、それが原因で、出力トランジスタが高速でスイッチングなどする結果、過電流で熱破壊してしまうのではないか」
彼はもともとトランジスタやOPアンプなどのアナログ回路が専門で、「ボクはデジタル回路は苦手でねぇ」などと言っていたのですが、さすがに基礎から学んできた人は、ものの本質を見抜くだけの見識を身につけていたのだなぁ、と今更ながらに感心します。

●そこでふたたび「静電気」

静電気は確かに恐いです。
部屋のドアや車のドアにさわったときにパチッとくるアレ、あれはホントにいやですねえ。
冬になれば人並みかそれ以上に静電気のパチンに恐怖する筆者なのですけれど、ICを扱うときに、「金属のクサリつき腕輪や足輪」などを使ったことはありませんし、「(セルフガソリンスタンドの)給油前にタッチ」みたいなことをしてから、作業したこともありません。

作業机はごく普通の樹脂加工した安物の机ですし、基板にICを実装するときには、なんと基板の下に発泡スチロール(!)の板を置いて、作業をしています。
それでいて、(ですから、かれこれ35年間CMOS・ICを扱ってきたことになりますけれど)「静電気による破損を疑う」ようなICの破損トラブルは、記憶にありません。

まあ、それでも「なんとなく静電気は気になる」とお考えの方は、ICにさわる前に、冷蔵庫とか電子レンジとか、アースされているものにちょいとタッチしてから、作業を開始するようにすれば、それで十分だと、思います。

●「試作基板の実装作業のおはなし」のはず、でしたけれど…

今回のお話のはじめのところで、「試作基板の部品実装作業にとりかかりました」と書きました。
とりあえず手始めに、クロック発振回路とCPUの基本クロックの発生回路に部品を実装して、無事に動作することを確認しました。
今回はそのあたりの説明をする予定だったのですが、またまた脱線してしまって、本題に入ることができませんでした。

今回の試作基板の部品実装作業は、機能ブロックごとに少しずつ実装し、動作確認を済ませながら進む、という方針のもとに、作業に取り掛かったのですが、いざ作業を開始してみると、それはなかなかに手間のかかる作業であることがわかりました。

今回ながながと説明しましたように、CMOS・ICは入力端子をオープンにしてはいけません。
ところが全部の部品を一度に組み付けるのではなくて、部分的に実装した状態で通電テストをするとなると、前段の回路が未実装であるために、結果として入力端子がオープンになってしまうICが出てきてしまいます。
これを防ぐには、その回路の一番前段から後方に向かって実装するように、作業を進めなければいけません。
しかし、ICによっては同じパッケージに入っているゲートをばらばらにあちこちの回路で使っているところもあって、理屈通りにはいきません。

つまるところ、作業予定の機能ブロック範囲に含まれるICの回路を全部チェックして、同じICが他のどの回路で使われているのか、それはそのまま通電してもよいのか、その回路の前にまでさかのぼって同時に組み付けなければならないのか、あるいはプルアップ抵抗を暫定的に追加しておかなければいけないのか、というようなことを検討しながら、作業していかなければなりません。

今回作業したクロック回路について、具体的にそのことを説明しますと…。

というあたりから、説明をしていく予定だったのですが、残念ながら、タイムアウトになってしまいました。
この続きはまた次回に、ということにしたいと思います。
2009.1.5upload

前へ
次へ
ホームページトップへ戻る