「うわ、工作面倒くせえ・わかんねぇ」





 「工作が面倒だ!」「途中で分からなくなった・・・」良くあることです。
 私もそうなりました、そして投げました。だか ら、私の作ったTD4は手配線じゃありません。
 「CPUの創りかた」という本の趣旨に反する作り方ですが・・・まぁいいでしょう。
 
 それはともかく。
 工作する上で途中で投げ出したり、分からないところを分かるようにするのは
 とっても大変です。おまけに工作後に動かなかった場合は、動くように直さないといけません。

 「こうすればよい!」というものはありません。
 しかし、「こうすればちょっとは楽だよ」というものは、いくつかあります。

 ここでは いくつかの方法をあげていきます。


 

 1: バーチャル配線をする



 いきなりユニバーサル基板に配線するのは、まったくの初心者でも大分なれてきた人でも
 抵抗があります。
 なにせ、どこにどの部品を置いたらいいかなんて、完成してみないと分からないんですから。
 (ある程度慣れて来た人なら、IC同士の配線が多いものをできるだけ近くに置けばいい、
 というのは見えてくるでしょうが、それも完成形が見えるわけではありません。)

 そこで、「仮想配線」(バーチャル配線)をして、どう なるかを考えてから実際に部品を
 配置するという方法があります。

 こうすれば、完成形がある程度見えますし、少々失敗しても大丈夫です。




 これを実現するために、ICB98-GUもどきの配線図を作ってみました。
 (画像をクリックするとより大きな、印刷に適した画像が得られます。)


 こいつを印刷して色鉛筆で配線図を書くなり、お絵かきツールに読み込んで、
 部品をレイヤーで重ねていくなりすれば、バーチャルな 配線ができます。

 あやのこうじ みかん さ んのページで、非常に美しいバーチャル配線図を公開しておられます。
 ここまで見事に配線されていたら、まず失敗することはないでしょう。


 途中まで完成したけど、あとが続かないという方であれば、現在の配線状況を先ほどの
 配線図に書いておくことで、2・3年後に再度挑戦することができます。
 (でも、そんなに寝かさないでくださいね。)

 また、今後の見通しを立てるのにも便利です。



 2: 部分的に作っていく



 一気に全体を作ろうとすると、その配線量のため絶対途中で飽きてしまいます。

 そこで、作るときは部分的に作っていくことで、「あ、 今日はこの部分が完成した」というように、
 自分のやる気を引き出すことができます。

 具体的な順番は、

 1・クロック・リセット回路(74HC14と、その周りの部分)

 2・CPU本体(ROMに使う74HC540と74HC154をの ぞいた残りの部分)

   さらにここは5分割できます。

   (1)74HC10 と 74HC32 (命令デコーダ)
   (2)74HC161・4つ分(レジスタ群)
   (3)74HC74  と 74HC283(加算器とフラグ)
   (4)74HC153・2つ分(マルチプレクサ)
   (5)I/O部分(LEDと入力用ディップスイッチ)

   順番は自由です。5分割すれば随分楽だと思います。

 3・ROM部分
   ROMに関係するところです。
   ROM部分は、4ビットずつ、4回に分けて作るといい でしょう。

 部分的に作っていくと、もっと良いことがあります。それは次を。



 3:途中でテストをする 



 全部完成してから動作チェックすると、「あれ、どこが悪いの」ということになりがちです。
 テストする箇所が多すぎて、困る場合もあります。
 そこで、先ほど述べた「部分的に作っていく」という方法に加えて、
 「部分的にテストする」という方法をとると、最後の動作テストが随分楽になります。

 ただし、ここに書いてある通りにすると
 「テスト用に作った回路をいったんはずしてから、次の製作に取り掛かる」
 というようなことをする必要があります。
 
 ですので、効率は少し悪いです。実際に使うときは、参考程 度にとどめて、
 もっと効率の良いテスト方法を使うと良いでしょう。


 それでは各ポイントでの動作テストの方法を書いていきます。
 

 1・クロック・リセット回路




 クロック入力回路と、リセット回路の先にLEDを取り付けて、ちゃんとクロックが出ているか、
 リセット信号が出ているかを見ます。

 面倒ならテスターを当てて、針が触れるかどうかを調べると良いで しょう。
 なお、この部分にLEDをつけたまま本体を作ると、動作に支障をきたす場合があります。
 (クロック信号がちゃんと出ない、などの理由で。)
 というより、この取り付け方だと問題が出ることがあります。
 
 つけた場合は、一回はずしましょう。


 2・CPU本体



こんな風に、1バイト分のROMをディップスイッチで構成し ます。
このディップスイッチを利用して命令を発行し、命令デコーダの動きやレジスタの出力を確認します。

どう確認すればよいかって?それは本を読み返してください。命令デコーダのあたりをね。
目で分かる確認方法もとるといいでしょう。具体的には、
OUT Im
命令を実行します。出力ポートのLEDが点灯するので良く分かります。この命令は
9x
ですので、スイッチを
1001xxxx
に設定します。xxxxであらわした16進数と、LEDのパターンが一致すればOKです。

この方法をとると、ROM部分と接続するときに、テスト用のディップスイッ チをはずさないといけません。
ですので、少し手間です。

お手軽テスト方法としては、0000番地のROMを先に作ってしまうと いう手があります。
(ただし、アドレスバスは接続しないでください。)
ここからテストパターンを出力すればOKです。


3・ROM部分




4連のディップスイッチで、ROMを選択している74HC154に対してア ドレスを与えます。
その結果、正しいビットが返っているかどうかを、LEDで確認し ます。
これも完成後は引っぺがすことになるので、
別のユニバーサル基板でテストボードを構成して、線だけをメインの基板につなぐようにすれば
随分楽にテストできるでしょう。





簡 単に作るための逃げ道



さて、ここまでいろいろあげてきましたが、「やっぱりもっと簡単に作りたい!」という方、結構おられる
のではないでしょうか。
ここではちょっとだけ逃げ道を提示しておきます。
ただし、逃げたのは良いけど、茨の道だったということもありますよ?
それだけは覚悟して取り組んでくださいね。


 逃げ道その1:誰かが基板を起こしていたら、それをいただく
          あるいはデータをいただく

  
  誰かがすでに起こした基板なので、確実に動くはずです。 これに部品を半田付けするだけ
  ですから、ものすごく楽。

  ただし!基板を起こすのはタダではありません! 
  業者に頼むと一枚数千~数万円程度、個人で作っている場合コストは数千円程度ですが、
  ものすごく手間がかかるので気安く「基板タダでくれ」などといった日には、張っ倒されるでしょう。(かな?)
  
  どう手間か、というのは「あるいは・・・」以下を実行してみると分かります。
  これはどういうことかというと、マスクパターンとかそういうものを誰かから頂いてきて、
  それを基に作るのです。まず、マスクパターンの設計だけでも大変です。
  (実際大変です。私の場合は2週間+α(失敗した分)かかりました。)

  次に基板製作グッズをそろえます。1度揃えればあとは、基板の代金だけ(千円程度)ですみますが、
  初期投資は結構かかります。
  
  そして、製作です。ノウハウがないと失敗しまくります。私の場合すでに基板5・6枚(5・6千円程度)
  無駄にしました。(涙)

  失敗しなくても大変なのが、「穴あけ」です。
  このTD4の場合、300個(エミュレータ使用時)~500個くらいの 穴を開ける必要があります。

  基板作成の経験がない方には、茨の道ですので。ご注 意を。
  
  ちなみに、お金と設計技術があるのなら、業者に発注するという手もありますよ。


 逃げ道その2:ROMは作らずエミュレータ

  配線の手間の半分以上を占める、ROM部分を作らずに ROMエミュレータでやってしまう。
  これは私がとった手段です。これのおかげで大変楽をできました。
  
  もっともこれのせいで、4bitCPUボードに、8bitCPUが載るという奇妙なことが発生していますが。
  (逆ならありそうだが・・・。) 

  この方法は、ROMエミュレータを開発できる力があれば、最もお勧めです。
  開発できなくても、私の作ったROMエミュレータを使ってくださっ ても良いです。(宣伝宣伝。)
  
  ちなみに後者の場合、AVRマイコンとそれの開発環境が必要です。
  これに関しては私に「教えて!」といわれても細かいことはお教えできませんので。
  開発環境の販売元とかに聞いてください。

  googleで調べると結構見つかりますよ。



 逃げ道その3:折衷案とかいろいろ

  折衷案です。たとえば、「ROM部分だけ面倒だから、基板を起こしてみよう」とか、
  「CPU部分だけ基板を起こしてみよう」とか。
  もし、よい逃げ道があったら、ぜひ教えてくださいね。



戻る