標準TTLだけ(!)でCPUをつくろう!(組立てキットです!)
(ホントは74HC、CMOSなんだけど…)
[第317回]
☆☆☆組立説明書の続きです。
今回の作業でCPU部分の組み立ては完了です。残るのはTK80回路のみになります。
説明書の作成作業に結構時間がかかってしまい、まだ実際の組立作業にとりかかることができません☆☆☆
●[12]ADD、SUB、CMP、DAD、DAA、RST、INT命令回路
12−1. ICの取付け
下の表にしたがってICを取付けてハンダ付けをします。
ICには、向きがあります。 間違えないようによく注意しながら作業してください。
部品番号 | 部品名 | ピン数 |
IC37 | HC03 | 14 |
IC38 | HC05 | 14 |
IC47 | HC04 | 14 |
IC61 | HC157 | 16 |
IC73 | HC244 | 20 |
IC74 | HC03 | 14 |
IC90 | HC283 | 16 |
IC91 | HC283 | 16 |
IC107 | HC373 | 20 |
IC125 | HC03 | 14 |
IC140 | HC05 | 14 |
IC158 | HC03 | 14 |
IC177 | HC03 | 14 |
IC191 | HC05 | 14 |
IC212 | HC74 | 14 |
IC246 | HC126 | 14 |
●12−2.集合抵抗の取付け
B18に集合抵抗(2.2KΩ8素子)を取付けてハンダ付けをします。
集合抵抗には向きがあります。
向きを間違えないように注意してください。
部品番号 | 部品名 | 表示、形状 |
B18 | 2.2Kx8 | 9pin,222 |
●12−3.抵抗の取付け
下の表にしたがって抵抗を取付けてハンダ付けをします。
抵抗の色コード表示については、T部品表のところで説明していますので、適宜参照してください。
部品番号 | 部品名 | 表示、形状 |
R16 | 1K | 茶黒赤金 |
R17 | 1K | 茶黒赤金 |
R18 | 1K | 茶黒赤金 |
R20 | 1K | 茶黒赤金 |
R58 | 2.2K | 赤赤赤金 |
●12−4.発光ダイオードの取付け
下の表にしたがってLED(発光ダイオード)を取付けてハンダ付けをします。
LEDは実装密度が高くて抵抗など他のパーツと同じ文字サイズで部品番号を表示することができません。
小さい文字で番号のみを表示してあります。番号のほかに信号名も表示してありますが、略記してあるものも多いので、番号と合わせて取付け位置を確認してください。Rは赤色、Yは黄色、Gは緑色、の発光ダイオードです。
発光ダイオードには向きがあります。向きを間違えないように十分注意して取付けてください。
部品番号 | 信号名 | 色 |
85 | ADDrd | Y |
86 | c8 | R |
87 | a7 | R |
88 | a6 | R |
89 | a5 | R |
90 | a4 | R |
91 | a3 | R |
92 | a2 | R |
93 | a1 | R |
94 | a0 | R |
95 | c0 | R |
229-2 | EI | R |
●12−5.コネクタの取り付け
下の表にしたがってコネクタを取り付けてハンダ付けをします。
このコネクタはフラットケーブル用のコネクタです。
フラットケーブルコネクタをこのコネクタに接続するときには、接続する向きがありますが、基板に取り付けてハンダ付けをする26Pストレートコネクタには向きはありません。
部品番号 | 部品名 |
CN1 | 26Pストレートコネクタ |
CN2 | 16Pストレートコネクタ |
●12−6.動作テスト
MYCPU80組立キットに付属しているACアダプタ型+5V電源のDCプラグを、MYCPU80基板の電源ジャック(J1)に接続して、電源本体のACプラグをACコンセントに差してください。
[注記]編集の都合で、動作テストの仕方については、「MYCPU80操作説明書」に記載していますので、そちらを参照してください。
●12−7.うまく動作しないときは
今回の作業でハンダ付けを行った個所のどこかに、ハンダ付けの不良、シヨート、ハンダの付け忘れ、あるいは部品の取付けミス(部品違い、逆差し)などがあると考えられます。
もう一度よく確認をしてみてください。
それでも解決しなかった場合は、どのような異常なのかをメールにて当社にご連絡ください。
メールを見させていただいた上で、さらにチェックしていただきたいポイントなどを、ご返事いたします。
☆☆☆以上が組立説明書からのコピーです☆☆☆
●組立作業をした部分の回路図です
今回の[12]ADD、SUB、CMP、DAD、DAA、RST、INT命令回路の組立作業に関系する部分の回路図です。
リンクをクリックしてご覧ください。
MYCPU80回路図bQ4
MYCPU80回路図bQ6
MYCPU80回路図bQ7
MYCPU80回路図bQ8
MYCPU80回路図bQ9
それぞれの回路図で、濃い緑色で着色した部分が今回実装したところです。
回路図の着色について
[第308回]の[注記2]をお読みください。
●シルク図にも色をつけました
組付けが済んだ部分が一目でわかるように、シルク図にも着色しました。
今回の作業部分は濃い緑色で着色しています。
前回までの作業部分は灰色にしてあります。
シルク図をクリックすると、拡大画像を見られます。
拡大画像はサイズが大きい(約1.7MB)ので、インターネットの低速接続環境ではダウンロードに時間がかかります。ご注意ください。
●過去記事へのリンク
今回組立を完了した、[12]ADD、SUB、CMP、DAD、DAA、RST、INT命令回路について説明をしている過去記事へのリンクをつけるようにしました。
回路図をご覧いただいて、「なんでこんな回路になっているんだ?」と思われたときなどには、ぜひご再読を。
08/7/17 [第10回]●宿題の答えです●十進補正って何だ?●16進数●ここからがやっと本題のDAAのおはなし●BCD数
08/7/20 [第13回]●DAAのお話の続きです●BCD数の計算でも、2進数の計算と結果が一致する場合もある●一致する計算と不一致になる計算を区別して整理してみよう●DAAの補正の方法が見えてきた!●しかし、それだけでは問題はまだ解決しない!●しかし、計算結果に「色」がついていた!●では、どのように補正するのか?●まだ、説明は終わりません!●キャリーフラグが問題!●以上のまとめ●まだ、宿題は全然終わりではありません!
08/7/21 [第14回]●DAAの続き(その2 減算に対しては?)●ところで、余談ですが、2進数、16進数には符号付の数と符号無しの数があります●2の補数(7月22日追記)●「1の補数」と「2の補数」●16ビットの2進数●16ビットの計算●2進数の、正の数と負の数●符号付の2進数には「符号ビット」というものがある●マイナスのマイナスはプラス、だが…●まだ、納得がいきません●本題に戻ります。BCD数の減算と2進数の減算の結果の違いについて整理してみましょう
08/7/22 [第15回]●DAAのお話の続き(その3 「減算後の補正について」の続き)●その前に、前回の加筆訂正についてのご報告です。●減算の代わりに加算する●上位桁についても同じ考え方ができるか?●上位桁と下位桁の両方ともに補正が必要な場合はどうなるか?●減算に対するDAA(十進補正)のまとめ
08/7/23 [第16回]●DAAのお話の続き(その4 最終回、のつもりでしたけれど…)●それでは、どんな回路になるのでしょうか?●忘れてしまうところでした。Nフラグについてです●負の2進数について、もう少し
08/7/24 [第17回]●DAAのお話の続き(その5 今度こそ、本当に終わり、です)●人間の計算方法(十進数)とコンピュータの計算法(2進数)は根本的に異なっている●コンピュータは単純な作業が得意。複雑な思考は、できません。●符号付2進数の特徴とは?●2進数は「金太郎飴」と同じ
09/3/24 [第190回]●ADD、SUB、CMP命令の回路の説明です●2進数の加減算命令だけを使って、なんと倍精度浮動小数点計算だってできる
09/3/25 [第191回]●こんどこそ本当に、ADD、SUB、CMP命令の回路の説明です●74HC157のデータシート(部分)です●算術演算命令の命令コード●ADD命令、ADC命令、ADI命令、ACI命令のタイミングチャートです●SUB命令、SBB命令、SUI命令、SBI命令のタイミングチャートです●CMP命令、CPI命令のタイミングチャートです
09/3/26 [第192回]●ADD、SUB、CMP命令の回路の説明の続きです●ADD命令の計算
09/3/28 [第193回]●減算命令の回路の説明です
09/3/30 [第194回]●減算命令の回路の説明の続きです
09/4/1 [第195回]●2進数の減算について、もう少し…●2進数では負数を引くことができないのはなぜでしょうか?●10進数なら、どうなの?●10進数の引き算でも、足し算にできる?
09/4/3 [第196回]●SBB命令の計算方法
09/4/4 [第197回]●SBB命令の計算方法の「理由」●2進数でSBB命令の計算方法を確認してみる
09/4/6 [第198回]●ADD、SUB、CMP命令の回路の説明(キャリーフラグを中心に)●キャリー無し加算、減算のためのC0入力●キャリー付加算、減算命令のためのC0入力●加算、減算実行後のキャリー出力回路
09/4/7 [第199回]●ADD、SUB、CMP命令の回路の説明(タイミングチャートを見ながら)●ほとんどの回路は、論理演算命令と同じ●算術演算命令の回路の説明
09/4/9 [第200回]●算術演算命令のテストプログラムです●テストプログラムの説明です●ADD命令のクロック毎の動作の写真です
09/4/10 [第201回]●ADC命令のクロック毎の動作の写真です
09/4/12 [第202回]●SUB命令のクロック毎の動作の写真です
09/4/14 [第203回]●SBB命令のクロック毎の動作の写真です
09/4/15 [第204回]●CMP命令のクロック毎の動作の写真です
09/4/16 [第205回]●CMP命令のクロック毎の動作の写真です(前回の続きです)●CMP C命令の動作の写真です●CMP D命令の動作の写真です●CMP H命令の動作の写真です
09/4/24 [第212回]●DAD命令の回路の説明です
09/4/25 [第213回]●DAD命令の回路の説明の続きです●DAD命令のタイミングチャートです
09/4/26 [第214回]●DAD命令の回路図です
09/4/28 [第215回]●DAD命令のクロック毎の動作の写真です●DAD命令のテストプログラムです●DAD B命令の動作の写真です
09/4/30 [第216回]●DAD命令のクロック毎の動作の写真です(前回の続きです)●DAD SP命令の動作の写真です●DAD D命令のT0の写真です●DAD H命令のT0の写真です
09/5/1 [第217回]●RST命令の説明です
09/5/2 [第218回]●RST命令の説明の続きです●RST命令のタイミングチャートです
09/5/3 [第219回]●RST命令の回路の説明です
09/5/4 [第220回]●RST命令の回路の説明の続きです
09/5/6 [第221回]●RST命令のテストプログラムです●テストプログラムを実行したあとの写真です●RST命令のクロック毎の動作の写真です
09/5/10 [第223回]●いよいよDAA命令の回路です●DAA命令の回路図です●DAA命令のタイミングチャートです
09/5/12 [第224回]●DAA命令の回路の説明です●DAA命令の回路の考え方です●改良後のDAA命令の回路図です●「8080 User’s Manual」を読んで気がついたこと
09/5/14 [第225回]●DAA命令の回路の動作テストです●まずは、先に実行するADDの値を決めましょう●DAA命令のテストプログラムです
09/5/15 [第226回]●DAA命令のテストプログラムの説明です
09/5/18 [第227回]●DAA命令のクロック毎の動作の写真です●MOV C,MのT0の写真です●ADD C命令のT0の写真です●DAA命令のステップ動作の写真です●HLT命令の写真です
09/5/20 [第228回]●DAA命令の実行結果の確認です●フラグレジスタ
09/5/22 [第229回]●今まで説明してきた命令を、表にまとめました●EI命令とDI命令
09/6/6 [第242回]●割込みとは?●EI(Enable Interrupt)とDI(Disable Interrupt)●割込みプログラム●割込みが受付けられるタイミング
09/6/7 [第243回]●INT(割込み)、EI命令、DI命令の回路です●割込みのタイミングチャートです●INT命令の回路の動作●DI命令の回路●EI命令の仕組み
09/6/8 [第244回]●またまた前回の訂正です
09/6/9 [第245回]●割込みのテスト回路です●テストを行うためにBASICボードと接続している様子です●割込みのテストプログラムです●割込み信号を発生させるBASICプログラムです●INT信号とINTRD信号です●INT信号のところだけ、マシン語サブルーチンを使いました●テスト中の各レジスタのLED表示です●INT信号の信号幅について●メインルーチンの処理中に割込みが入っている様子です
09/6/10 [第246回]●今回も割込みの回路の続きです●またしても、回路にまずいところが…●テストプログラムもまずいのでは…●テストプログラムも直しました●変更したテストプログラムを実行してみました
●T0とINTRD信号です●上の写真の時間軸を拡大したものです●テストプログラムを実行中の写真です
09/6/26 [第260回]●ADD、ADC、SUB、SBBのテストプログラムです
09/6/27 [第261回]●ADI、ACI、SUI、SBIのテストプログラムです●思いついてしまった、うまい方法とは?●逆アセンブラを使って生成したZ80用のテストプログラムです●ZBKボード上で実行した結果です
09/7/4 [第268回]●LXI PUSH POP STA LDA XCHG SPHL DAD INX DCXのテストプログラムです●STAX LDAX CMA STC CMC SHLD LHLD NOPのテストプログラムです
09/7/8 [第272回]●DAAのテストプログラムです●DAAのテストプログラムの考え方●DAAのテストプログラムのリストです●DAAの結果をプログラムで確認する●プログラムの簡単な説明です●テストプログラムの実行結果をUSB経由でパソコンに送りました
09/7/11 [第275回]●DAAテストプログラムの実行時間を計ってみました
2009.8.26upload
前へ
次へ
ホームページトップへ戻る