Xmas☆Xmas

クリスマスの話題やアドベントカレンダーの記事をお届けします。

1bit-CPUをレイアウト設計した話

この記事は、オープンソース半導体 Advent Calendar 2025 の9日目の記事です。qiita.com

 

オープンソース半導体ということで、誰でも無料で設計できる環境があるのですが、実際にやろうとする人はまだまだ少数

 

ですが「CPUを作る!」というとソフトウェアエンジニアの皆さんも少し興味が湧くのではないでしょうか?

 

まあ、CPUといっても今回ワタシが作ったのは1ビットのCPUなんですが☺️

何か手を動かして作るということは、とても大事ですよね!

 

まずは設計環境をつくることからはじめます。

コレはWindowsPCにWSL のイメージを入れるだけ!カンタンです!

 

環境が作れたら、「こういう回路を作ろう!」という回路設計をします。

今、ワタシが使っているソフトウェアは Xschem(エックススキーム)です。

今回の回路はこちら

1bit-CPUの回路

 

今のところ、回路設計から自動的にレイアウト設計はしてくれないので

製造する時に使うgdsデータは自分で回路設計図を見ながらレイアウトしていきます。

レイアウトで使うソフトウェアはKLayout(ケイレイアウト)です。

 

今回の設計は、スタセル(スタンダードセル)と呼ばれる AND や OR などの論理回路を、置いてつないでいくだけの設計です!

 

設計したものを実際に製造するとなると、ファブと呼ばれる製造工場ごとに作り方が違うため、「こういうルールで作ってくれ!」という独自のルールがあります。

 

そのルールを守って設計してないと製造できませんので、ルールが守られているかチェックする必要があって、それをDRC(デザインルールチェック)といいます。

 

レイアウト設計できた!って思ってもこのDRCが通らないといけません。

 

やっとDRCが通ったとなっても、これで終わりではなくLVS(Layout versus schematic)を通る必要があります。これは回路図と製造用のレイアウトが同じかどうかチェックするものです。

 

ここでハマることがあります。今回はハマってしまってなかなか通らなかったんですが、寝不足だと集中力が切れちゃう時があるので、ひと晩しっかり寝て見直すと、いろいろミスを発見することができました。なんで昨日できなかったんだろう?不思議!

 

それで完成したレイアウトがコレです。

1bit-CPUのレイアウト

 

自分でつくる喜び!満喫!

あと、レイアウト設計することで、自分の好きな絵を載せられる楽しみがあります!

メタル層で自分のSNSのアイコンを作ってみました!

2月には製造されてくる予定らしいので、とっても楽しみ!

実際にモノがくるっていうのが素敵ですよね!

 

 

興味のある人は、ぜひオープンソース半導体系コミュニティ「ISHI会」の
Discord を覗きにきてくださいねー!

discord.com

 

待ってまーす💖

 

 

明日は@jun1okamura (Jun-ichi OKAMURA)さんの『KLayout の Python API を試してみた!(Instance Class)』です!お楽しみに〜

 

(おしまい)

 

はじめての薄い本を技術書典で売ってみた話 Open Source Silicon Magazine Vol.1 ーはじめてのIC設計ー

この記事は、オープンソース半導体 Advent Calendar 2025 1日目の記事です。

qiita.com

 

皆さん こんにちは!あるいは こんばんは!

アドベントカレンダーの季節がやってきましたね🎄⭐️

今年もオープンソース半導体コミュニティのISHI会の活動で楽しかったことを色々と書いていきたいと思います💖

 

ISHI会とは

主にdiscordで活動しているオープンソース半導体コミュニティです。

ワタシ自身は「クリーンルームって何かカッコイイ💖入ってみたいなー」って思ったのが、相乗りLSIの設計に参加するきっかけでした!

なので、オレオレチップを作ってみたい!とか、どんなことやってるのかな?って気になったら、ぜひ覗きに来てくださいね!

discord.com

 

ずっと参加したかった技術書典

技術書典の存在はちょっと前から知っていて、オンラインから技術書典に出ている本を何冊か買ったりしてて行ったことはないけれど、行ったらきっと楽しそう!

ってずっと思ってました😍

 

機会があったら、自分も本を売りたい!

そう思っていたのでISHI会で技術書典に出る企画が出た時は、絶対やりたい!って手を挙げたんです!

 

ですが・・・専門知識のないワタシが技術書を書く・・・・

かなり無理がありますよね・・・・

 

でも、幸い先生方が監修してくださるということで、ワタシの担当した2章(PMOSとNMOSの章)を何とか、それなりに書くことができました💖夜な夜な頑張った!

 

そして表紙も担当させてもらって、池袋に行って技術書典にも参加して、紙の薄い本が完売した時はホントうれしかったー!

 

 

PDF版はまだ売っているので、ぜひぜひ買って読んでね💖

techbookfest.org

 

知らなかったけど、amazonでも販売しているみたい👀✨

https://amzn.asia/d/3FnzZz6

 

明日はザッキー先生のTiny Tapeoutのお話だよ!

qiita.com

 

(おしまい)

Chipathon2024に参加していながら全然貢献できてない話(懺悔)

この記事は、オープンソース半導体 Advent Calendar 2024の17日目の記事です。

qiita.com

今年のアドベントカレンダーも17日目🎄ワタシからは今年のChipathon(チッパソン)2024に参加していながら全然貢献できてない話をしたいと思います。

Chipathon(チッパソン)とは?

2024 SSCS PICO Open-Source Chipathonとは、国際的な電気・電子・情報に関する学会のIEEE(アイ・トリプル・イー)の集積回路技術に関する競技会で、世界中の誰でも参加できるコンテストです!

 

どのような人向けのコンテストかというと、大学進学前の学生、学部生、地域のIC 設計コミュニティの初心者向けのオープンソース集積回路 (IC) 設計コンテストになります。

 

今年のお題は『Automating Analog Layout(アナログ レイアウトの自動化)』ということで、fifty-niftyと呼ばれる指定された基本の回路を選んで、その回路を元にアナログ回路のレイアウトを機械学習で最適化してを自動生成するというものです。

 

プログラム言語はPythonで、最終的にはIPythonで環境設定からレイアウト書き出しまでイケるといいなっていうコンテストです。

 

大谷選手の50-50で世間が賑わっている中で、私たちはfifty-niftyという回路について学んでいた訳です。sscs.ieee.org

ISHI会でチーム参加

ワタシの推しコミュニティのISHI会(半導体系コミュニティ)では、今年は日本チームで申し込むような内容なのか?よくわからなかったので、5月10日の申込締切までに各自個人で申し込みました。

 

その後、個々に環境設定をおこなうのですが、当時ワタシが使っていたインテルMacでは環境設定ができなかったので、勢いでAppleシリコンM3 MacBookProを購入しました。

そのままひとりで参加したり、結局チームを組んで参加することになったんですが、英語が全く出来ないワタシはSoltyChipさんのチームが拾ってくれて入れてもらいました!ありがとうございます!

ishi-kai.org

 

Chipathonの作業はISHI会の定例もくもく会で木曜日の21~24時。本体Meetingは、世界中の人が参加しているので日本時間だと木曜日深夜12時からの開催です。

参加してても英語の内容が理解ができずチンプンカンプン・・・・・(最初全く聞こえなかったのが、最近知っている単語が少しずつ聞き取れるようにはなった!!)・・・今年はプライベートでも何かと忙しかったので、全然できてなくて、全く貢献できてない!!!

 

今年やらかした事としてエンジニアカフェの忘年会で懺悔LTしたスライドを置いておきます・・・ごめんなさい💦

speakerdeck.com

 

Chipathon2024の詳しい内容は、オープンソース半導体 Advent Calendar 2024の22日目の記事でリーダーのSoltyChipさんがしてくれますので、ご期待ください!!

 

わからないけど挑戦だけはしつづけたい!っと思うのです。何度も挑めばいつか何か理解できる日がくる・・・んじゃないかな?

 

(おしまい)

今年もあるよ!ミニマルファブコンテスト2024🎄

この記事は、オープンソース半導体 Advent Calendar 2024の1日目の記事です。

qiita.com

 

今年もアドベントカレンダーの季節🎄がやってきましたね!

オープンソース半導体 Advent Calendar 2024のトップバッターとして、誰でも

挑戦できるミニマルファブコンテスト2024のお話をしたいと思います!

 

全然半導体の専門家でも学生でもないワタシですが、昨年のミニマルファブコンテストにも参加して実際にウェハに焼いてもらって設計通りに動作するか測定することができました!

昨年コンテストで作ったインバーター・イン⚪︎ーダー

 

ミニマルファブコンテストは半導体に興味がある人が参加しやすいコンテストとなっています。コンテストに参加して選ばれると実際に製造してもらえるのが、このコンテストの凄いところです!参加すると、転職や就活に「半導体チップの設計ミニマルファブでやりました!」ということでアピールになること間違いなし!

 

オープンソースですから、無料でダウンロードできるソフトウェアを使うのでお高いCADやらアプリケーションを用意する必要がありません。Linux好きのソフトウェアエンジニアさんや学生さんも挑戦しやすいと思います。

 

ミニマルファブって何?

そもそもミニマルファブって何?ということですが、ハーフインチ(0.5インチ)のウェハを使って各プロセス毎の装置を使うことで、クリーンルームがない環境でも多品種少量生産を可能とする小規模なシステムのことです。

 

詳しくは一般社団法人ミニマルファブ推進機構 のサイトをご覧ください。

www.minimalfab.com

 

コンテストの詳しいことは、きっと他の誰かがアドベントカレンダーで書くと思うので割愛します!(誰か書いて!)

 

初心者でも参加しやすいように、毎週水曜日の21時からISHI会のdiscordでもくもく会しているのでぜひ覗きに来てください!

discord.gg

 

(おしまい)

もうすぐクリスマス2024!

もうすぐクリスマス2024!

今年もこの季節がやってきましたね。

 

Xmas☆Xmasでは、このクリスマスの時期だけブログを更新して

クリスマス情報やアドベントカレンダーの記事を紹介します!



MakeLSI:相乗り試作2023夏の話。

この記事は、オープンソースPDK(Process Design Kit) Advent Calendar 2023の16日目の記事です。

qiita.com

 

 

オープンソースPDKのアドベントカレンダーへの投稿も3回目!

 

今回は、金沢大学の秋田先生がやっているMakeLSI:という半導体コミュニティの2023年夏の相乗り試作の話です。

 

半導体のハの字も知らない主婦が、クリーンルームに入りたいという憧れから入って、そこからは毎年なんか回路を作って、相乗りチップに乗せてもらっています。

 

相乗り試作2023夏ではシュミット・トリガ回路を作りました!

なんかキャッチーな名前なのとアナログ回路作ってみたかったので決めました。

 

最初に作ったシュミット・トリガ回路

ダミーレイヤーをつけるとバラツキを抑えられると教えてもらい、完成したGDSがコレ!

完成したシュミット・トリガ回路

回路を書いたりシミュレーションしたりするXschemというソフトウェアはLinuxで動かすので、EDAサーバーを使おうと思ったのですが、環境設定がうまくいかなくて挫折。

 

LTspiceでやればいいって教えてもらえたので、できたんですがこんな感じの回路図です。

シュミット・トリガ回路の回路図

 

シュミットトリガ (Schmitt trigger) は、入力電位の変化に対して出力状態がヒステリシスを持って変化することを特徴とする電子回路である。

 

ってWikipediaに書いてあるのですが、実はヒステリシスって何??

って感じで、作ったのに、まだうまく説明できないです。

 

年内にチップが出来上がってくるらしいので、その時にまたブログを書いて説明できればいいな。届くのが楽しみ。

 

毎年こんな感じ↓で自分のために作り方のメモをNotionにまとめているんだけど、いつも最後まで上手く書けず公開できてないです・・・ごめんなさい・・・

相乗り試作2023夏 Notionメモ 毎年インバーターから作り始める



 

相乗り試作2023夏 Notionメモ 失敗だらけで最後書けなくなる

 

 

ワタシは詳しいことがわからないけど、

OpenRule1umというPDKを使っているんですが、

今の半導体オープンソース化の波がくる以前から使っているのだけど、

コミュニティ内でだけ使うから完全にオープンではないから

オープンソースPDKではないって扱いなのかしら??

 

ワタシはいまだに、秋田先生の言っていたエリンギが

ワタシにもいつか作れたらと秘かに思っています。

 

最初に入った時はwgexというレイアウト設計ができるオープンなソフトで描いたんですが、

 

「わからないことがあったら質問してください」

と言われて、

「wgexってなんて読むのですか?」

とか聞いたのをいまだに覚えています。

 

正解は全く覚えていなくって、いまだに自分の中では「ダブルゲックス」って呼んでいます。

 

次にgladeというレイアウト設計ができるオープンなソフトを使って描いていました。

 

このgladeというソフトがバージョンによってはボコボコ描いてるあいだに

落ちるんで、なんかあの時、忍耐力を鍛えられた気がする。

 

(ポエムおしまい)