NAND 16bit ALUの製作

記事作成日時:2024-08-24 22:39:14
最終更新日時:2024-10-12 22:19:20
NAND 16bit CPU「NLP-16A」の ALUの製作についてです。

回路図,基板図面等は ここ にあります。

ALUの組み立て ALUの組み立て

完成するとこのようになります。
注意 ALU基板は2台作る必要があります

部品表 部品表


番号 部品名 秋月URL(参考) 備考
U1-U60 74HC00 U74HC00L-D14-T 四角のパッドが1ピン
D1-U56 3mm赤色LED 3mm赤色LED 0.5mAで設計しているのでそれで光るくらいの高輝度LED
四角のパッドがマイナス側
D57 3mm緑色LED 3mm黄緑色LED 上と同様
R1-R9 1608サイズ10Ω抵抗 チップ抵抗 1/10W10Ω
R10 1608サイズ470Ω抵抗 チップ抵抗 1/10W470Ω
RN1-RN8 8素子集合抵抗4.7kΩ 集合抵抗 8素子 4.7kΩ 四角のパッドが1ピン
C1-C28 0.1μF セラミックコンデンサ セラミックコンデンサー 0.1μF25V F 積層セラミックコンデンサでもディスクセラミックコンデンサでも可
C29 47μF 電解コンデンサ 電解コンデンサー47μF35V105℃ ルビコンPX 10だと少し少ないかもしれないが100だと過剰だと思う
基板のシルクが白い方がマイナス側
J1-J4 2x10 L型ピンヘッダ ピンヘッダー (オスL型) 2×40 (80P) 2x40を買って4分割すると安い
ピンが外側に向くように
J5 ターミナルブロック ターミナルブロック 2P 緑 縦 小 この「緑 縦 小」じゃないとICと干渉して実装できないので注意
チップ抵抗など背の低い方から実装するのがおすすめです。先にピンヘッダを実装すると実装がとても難しくなります。

また,ターミナルブロックの選定は注意してください。設計があまりよくなくて,リンク先のものと同じような形状,サイズでないと実装できません。


ALU制御の組み立て ALU制御の組み立て

完成するとこのようになります。

こっちは1枚でおk

スポンサードリンク

部品表 部品表

L型のピンヘッダとストレートのピンヘッダを間違わないように気を付けてください。
番号 部品名 秋月URL(参考) 備考
U1-U28 74HC00 U74HC00L-D14-T 四角のパッドが1ピン
D1-D16 3mm黄色LED 3mm黄色LED 0.5mAで設計しているのでそれで光るくらいの高輝度LED
四角のパッドがマイナス側
D17-D20 3mm赤色LED 3mm赤色LED 上と同様
D21 3mm緑色LED 3mm黄緑色LED 上と同様
R1-R16 1608サイズ10Ω抵抗 チップ抵抗 1/10W10Ω
R17 1608サイズ470Ω抵抗 チップ抵抗 1/10W470Ω
RN1-RN3 8素子集合抵抗4.7kΩ 集合抵抗 8素子 4.7kΩ 四角のパッドが1ピン
C1-C28 0.1μF セラミックコンデンサ セラミックコンデンサー 0.1μF25V F 積層セラミックコンデンサでもディスクセラミックコンデンサでも可
C29 47μF 電解コンデンサ 電解コンデンサー47μF35V105℃ ルビコンPX 10だと少し少ないかもしれないが100だと過剰だと思う
基板のシルクが白い方がマイナス側
J1 ターミナルブロック ターミナルブロック 2P 緑 縦 小 この「緑 縦 小」じゃないとICと干渉して実装できないので注意
J2 2x20 L型ピンヘッダ ピンヘッダー (オスL型) 2×40 (80P) 2x40を買って2分割すると安い
ピンが外側に向くように
J3,J4,J6,J7 2x10 ピンヘッダ ピンヘッダー 2×40 (80P) 2x40を買って4分割すると安い
J5 2x10 L型ピンヘッダ ピンヘッダー (オスL型) 2×40 (80P) 2x40を買って4分割すると安い
ピンが外側に向くように


ハードウェアのテスト ハードウェアのテスト


テストに必要なもの テストに必要なもの

デバッガ4台 ↓
NLP-16A 簡易デバッガ
デバッガをデバッグする際の構成
NAND 16bit CPU「NLP...(以下略)
記事作成日時:2024-10-04 11:39:38
最終更新日時:2024-10-05 00:29:02
接続用ケーブル

部品名 秋月URL(参考) 備考
2x10ピンリボンケーブル 2×10(20P)両端コネクター付IDCリボンケーブル(フラットケーブル) 5本必要
2x20ピンリボンケーブル 2×20(40P)両端コネクター付IDCリボンケーブル(フラットケーブル) 1本必要
オス-メスジャンパワイヤ コネクター付ケーブル 20cm 40P オスメス 6ピン分だけ使用
ジャンパピン ジャンパーピン赤(2.54mmピッチ) 1つだけ使う
USB-UART変換 CH340E USBシリアル変換モジュール Type-C

接続 接続

ALUのテストは ALU基板2枚とALU Ctrl基板1枚の計三枚 で行います。
それぞれの基板の電源は特段書かれていませんが,デバッガ,ALU,ALU Ctrlのすべて(デバッガは4台の内一台接続されていればおkです。)で接続してください。
ちょっと見づらいですが,実際の接続はこんな感じです。
デバッガのバージョンが異なりますが,接続方法は同じですので,参考にしてください。

スポンサードリンク

ALU Ctrlとデバッガの接続 ALU Ctrlとデバッガの接続

まずは1番下の段です。ALU Ctrl基板とデバッガは以下のように接続します。グレーアウトされているものはあとで接続されます。
デバッガとの接続では,ALU Ctrlでは0-----F(こっちは16進表記),デバッガでは0-------15(こっちは10進表記。バラバラでごめんなさい。作ってる時は気が付かなかった…)と書いてありますので,同じ向きになるように接続してください。
リボンケーブルの向きの説明は以下が分かり易いので参考にしてください。BOMに書いてある秋月のものは「No.1」です。
ストレートケーブルと反転ケーブル

ALUとデバッガの接続 ALUとデバッガの接続

次に下から2段目,3段目です。ALUの入力端子それぞれにデバッガを接続します。

ALUとALU Ctrlの接続 ALUとALU Ctrlの接続

上手く重なるように設計しているので,特に困らないかと思います。もし接続しにくければ何か間違いがあるかもです。

横から見るとこのようになります。

デバッガの接続(ALUテスト全体) デバッガの接続(ALUテスト全体)

デバッガ同士の接続です。ID:01とID:02の間はオス-メスジャンパワイヤで接続してください。また,末端(ID:04)のデバッガは基板上の「末端ではジャンパする」と書いてあるピンヘッダをジャンパピンでジャンパしてください。


スポンサードリンク

実行 実行

ここ にあるmain.pyをターミナルから実行します。

$python3 main.py

実行にはpythonにtqdmとpyserialが必要です。 [NLP-16Aの製作 ] を参考に導入してください。

特にエラー表示が無ければ完了です。

実際の動作
Twitter
エラー時の動作

passと出ている項目は正常に動作していますが,エラーが出ると一番最後の行のような表示になります。
ここではALUの出力が「1234」という数値で,かつフラグがS,Z,Vの3種がHであることを期待していますが,実際の出力が「1034」ですので,エラーとなっています。


まだまだ雑さが残るページですので,疑問等ありましたらコメント欄やTwitterでお気軽にご質問いただければと思います…

関連するページ


コメント欄

投稿をすべて見る

最新の投稿を見る

投稿をすべて見る

投稿する場所
名前
メール
削除キー
添付画像(1投稿1枚10MBまで)
↓チェックを入れてからボタンを押してね!!認証エラーになるよ!!
なんかアドブロック使ってるとダメらしい...すみません
今日累計
キリ番踏み逃げ禁止!!

スポンサードリンク




RSSフィードはじめました.詳細RSS