「CPUの創りかた」のCPUを作ってみた

4 min 770 words
Suzuki Shun Placeholder text describing the default author's avatar.

Categories: posts

td4-blink
TD4によるLチカ. ROM部分はRaspberry Pi Picoにより代用. (プログラムカウンタ用の74HC161の配線をミスったので無理やり修正している.)

「CPUの創りかた」はだいぶ前に読んだが, 実際には作っていなかった. この度, 重い腰を上げて実際に作ってみることにした. ついでに, 気になっていた中国の基板メーカーを試しに使ってみた. これはその備忘録である.

なお, 基板データとLチカプログラムGitHubにおいてある.

  • 配線ミスは修正済み

部品の購入

部品は「秋月電子通商」と「樫木総業株式会社」で購入. すべて, オンラインストアから購入できる.

  • 秋月電子通商

    • 【P-04624】 オーディオ用無極性電解コンデンサー10μF25V85℃ ニチコンMUSE・ES
    • 【P-04065】 絶縁ラジアルリード型積層セラミックコンデンサー 0.1μF50V2.54mm
    • 【P-02724】 電源用電解コンデンサー100μF35V105℃ ルビコンZLH
    • 【P-03116】 電解コンデンサー10μF50V85℃ ルビコンPK
    • 【R-07803】 カーボン抵抗(炭素皮膜抵抗) 1/2W100Ω (100本入)
    • 【R-07820】 カーボン抵抗(炭素皮膜抵抗) 1/2W1kΩ (100本入)
    • 【R-07829】 カーボン抵抗(炭素皮膜抵抗) 1/2W3.3kΩ (100本入)
    • 【R-07838】 カーボン抵抗(炭素皮膜抵抗) 1/2W10kΩ (100本入)
    • 【R-07847】 カーボン抵抗(炭素皮膜抵抗) 1/2W33kΩ (100本入)
    • 【R-07853】 カーボン抵抗(炭素皮膜抵抗) 1/2W100kΩ (100本入)
    • 【I-11333】 3mm赤色LED 625nm 70度 OSR5JA3Z74A (100個入)
    • 【P-03647】 タクトスイッチ(黒色)
    • 【P-03646】 タクトスイッチ(赤色)
    • 【P-00300】 基板用小型3Pトグルスイッチ 1回路2接点
    • 【K-16149】 Raspberry Pi Pico ベーシックセット
  • 樫木総業株式会社

    • 74HC10(DIP品)
    • 74HC14(DIP品)
    • 74HC32(DIP品)
    • 74HC74(DIP品)
    • 74HC153(DIP品)
    • 74HC161(DIP品)
    • 74HC283(DIP品)
    • 金メッキディップスイッチ DC04

基板データ

KiCadではじめる プリント基板設計入門を参考に回路図の作成/配線を行う. ROMは流石に面倒なのでRaspberry Pi Picoで代用した. 電源もここから取ることにした. 74HCシリーズを使用するので3.3Vでも問題ない.

基板の作成はPCBGOGOにお願いした. パラメータとかはすべてデフォルトのまま.

基板データはGitHubにおいてある.

  • 配線はかなり適当. クロックが十分に遅いので適当でも動く.

Lチカプログラム

プログラムはRaspberry Pi Picoで組込みRust開発(開発環境構築編)を参考にRustで作ってみた. アドレスの読み込みとデータの出力が同期してないので, 誤作動の危険性はある. が, ラズパイのほうが圧倒的に動作が速いので基本的に問題ないと思われる. まあ, お遊びなので誤動作しても問題ない.

プログラムもGitHubにおいてある.

参考文献