トランジスタでCPUをつくろう!
トランジスタで8080をつくってしまおうというまさにびっくり仰天、狂気のプロジェクトです!
☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆
見事にできましたら、もちろんTK−80モニタを乗せて、それからBASIC、CP/Mを走らせましょう!
☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆
[第343回]
●TR126基板を作り直しました
TR126のプリント基板はもう何回も作り直しています。
最初は[第327回]で紹介しました。
その後に[第330回]で出力段に逆電流を防ぐためのダイオードを追加した基板を作りました。
そのときはその回路でいくつもりだったのですが出力段にダイオードを追加するというのがどうにもすっきりしません。
よくよく考えていくうちにダイオードを追加するというのは余り賢い回路ではないことに気が付きました。
基本に戻って考え直した結果[第337回]の回路を考えました。
これならいいだろうということでまたプリント基板を作り直したのですが。
ところがその回路にはまだ大きな穴があることに気が付きました。
またまた考え直しです。
結局[第341回]の回路に落ち着きました。
下は最終的に決定したTR126の回路図です(4回路のうちの1回路です)。
で。
その回路に基いて再度プリント基板を作り直しました。
今度こそはもう大丈夫だと思います(と思いたいです。ほんと)。
こちらが最終的に作り直した新しいTR126基板です(部品面)。
空いていたスペースにT9、T10を追加しました。
プルアップ抵抗も最終的にR11、R12ともに4.7KΩに落ち着きました。
こちらはハンダ面です。
部品を実装しました。
TR126の基板に部品を実装するのはこれでもう4回目です(いささか疲れましたです)。
さて。
作ったからには念のためにまた動作テストをしなければなりません。
これももう何回も同じことをやっています。
同じテストですけれど、[第330回]に従って新しい基板でテストを行いました。
入力に何もつながないときの基板全体の電流値を測定しました。
3.32mAです。
[第330回]よりもほんの少しだけ小さい値になりました。
プルアップ抵抗のR12を3.3KΩから4.7KΩに変更したからかもしれません。
全部の入力をGNDにつなぎました。
プルアップ抵抗は4.7KΩですから、入力をGNDにつないだときに流れる電流は
4.6/4.7≒1mA
ですから1回路あたり2mAで、その4回路分ですから基板全体では約8mA流れる計算ですが、実測値は9.56mAです。
計算よりも少し大きい値になっています。
まだほかにも流れているところがありそうです。
入力EがLのときにはT7、T10、T3、T4がONになります。
同様に入力AがLのときにはT5がONになります。
このときT2はONにはなりませんがT2のベース抵抗R2にはT4がONのため電流が流れます。
それぞれのベース抵抗(51KΩ)に電流が流れるためその合計値は
(4.6−0.6)/50*6=0.48mA
と計算されます。
概算のためトランジスタのOFF電圧を0.6Vとしました。
また抵抗値は50KΩとしました。
その4回路分ですから
0.48*4=1.92mA
です。
合計すると
8+1.92=9.92mA
になりますから、ほぼ実測値に一致します。
ほかの入力のときの電流値も測りました。
全ての入力をVcc(4.6V)に接続しました。
動作としては入力になにもつながないときと同じ(プルアップ抵抗があるため)ですが、直接Vccにつないだほうが電流が減少します。
おそらくプルアップ抵抗だけのときは若干の出力ショートが起きているように思われます。
入力をE=0、A=1にしてそのときの基板全体の電流を測定しました。
E=0にする(入力EをGNDにつなぐ)とプルアップ抵抗の4.7KΩがGNDにつながるためにそこに約1mA流れます。
その4回路分ですから基板全体では4mAになります。
実測値は6mAです。
A=1のときはさきほどの計算とは電流が流れるトランジスタや抵抗が異なりますが、トータルでは電流値は同じになります。
1.92mAでした。
それを4mAに加算すると5.92mAになります。
青色LED+22KΩ抵抗にも0.1mAほど流れますからそれを加えると
5.92+0.4=6.32mA
になります。
ほぼ実測値に一致しました。
入力をE=1、A=0にしてそのときの基板全体の電流を測定しました。
A=0にする(入力AをGNDにつなぐ)とプルアップ抵抗の4.7KΩがGNDにつながるためにそこに約1mA流れます。
その4回路分ですから基板全体では4mAになります。
E=1のときはT8とT9がONになります。
A=0のときはT5とT2がONになります。
ベース抵抗を流れる電流は
(4.6−0.6)/50*4=0.32mA
になります。
その4回路分は
0.32*4=1.28mAです。
それと青色LEDの分0.4mAを加算すると
4+1.28+0.4=5.68mAですからほぼ実測値と一致します。
今度は出力Xの電流を測定しました。
E=1、A=0のときに出力XとVccとの間に1KΩの抵抗をいれてそこを流れる電流を測定しました。
E=1、A=0のときは出力トランジスタT2がONになって、出力はLレベルになります。
そことVcc(4.6V)との間に入れた1KΩの抵抗を流れる電流は4.6mAです。
実測値とほぼ一致しました。
E=1、A=1のときに出力XとGNDとの間に1KΩの抵抗をいれてそこを流れる電流を測定しました。
E=1、A=1のときは出力トランジスタT1がONになって、出力はHレベルになります。
そことGNDとの間に入れた1KΩの抵抗を流れる電流は4.6mAです。
実測値とほぼ一致しました。
E=0、A=0のときに出力XとVccとの間に1KΩの抵抗をいれてそこを流れる電流を測定しました。
E=0のときは出力Xはハイインピーダンスになるため電流は流れません。
電流値が0mAにならないで0.12mAになっているのは出力回路の赤色LEDに電流が流れるためです。
Vccから1KΩを通して22KΩ+赤色LEDに電流が流れるため赤色LEDが点灯しています。
E=0、A=1のときに出力XとGNDとの間に1KΩの抵抗をいれてそこを流れる電流を測定しました。
E=0のときは出力Xはハイインピーダンスになるため電流は流れません。
今度は出力LEDも点灯しませんから電流値は0mAになりました。
トランジスタでCPUをつくろう![第343回]
2021.4.18upload
前へ
次へ
ホームページトップへ戻る