SlideShare ist ein Scribd-Unternehmen logo
1 von 90
Interface Device Laboratory, Kanazawa University http://ifdl.jp/
「揚げて炙ってわかる
コンピュータの仕組み」
の舞台裏
秋田純一(金沢大)
@akita11
#分解のススメ
(第5回)
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
自己紹介(その1)
’70 名古屋生まれ
小4のころから、ハンダの煙で育つ
東京で大学→大学院
D論:低消費電力な4進木読み出しイメージセンサ
金沢大(’98~’00・’04~)
現:理工学域 電子情報通信学類
※融合学域(専任)に異動予定
公立はこだて未来大(’00~’04)
‘95-’00: 計画策定委員として、
大学の策定に関わる
(はこだて未来大のHPより)
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
研究内容(概要)
集積回路
特に(機能つき)イメージセンサ
+集積回路を使うデバイス・システム
ユーザインタフェース・インタラクティブシステム
(人間相手の機械)
集積回路(イメージセンサ)のレイアウト図
(プロッタ出力して目視チェック)
基板設計
研究室(実験室)
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
自己紹介(その2)
Maker、ハンダテラピスト
好きな半田はPb:Sn=40:60
好きなプロセスはCMOS0.35μm
好きなICパッケージはDIP8ピン
Maker(広い意味での「ものづくり」)
Makerイベントの運営などのコミュニティ活動
NT金沢の企画・運営(6月末頃@金沢駅地下広場)
電子工作関連ガジェットの企画・設計・販売
本の著者紹介には
60:40とありますが
訂正お願いします!
本の著者紹介に
書き忘れたので
追記お願いします!
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
チップを炙って晒していたら・・・
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
本になってしまった
あと、いろんな人が「炙っ
て」と古いガジェットをくれ
る
教訓:ネタを晒しておくと、
拾ってくれる人がいる
技術評論社の傅さん、
ありがとうございます
(実は数年前に別の出版
社に企画を持ち込んでボ
ツになった内容)
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
正誤表
40:60
https://suzuri.jp/yamac/4566465/t-shirt/l/applegreen
・ 好きなICパッケージはDIP8ピン ←追加
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
好きなICパッケージはDIP8ピン
マイコン/オペアンプ/555で属性が分かれる
とも
https://www.youtube.com/watch?v=4ZE9st9IJRo
https://www.nicovideo.jp/watch/sm25650867
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
※私のオリジナルではありません
基板揚げの先人:ぱ研(現在は閉鎖中)
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
※私のオリジナルではありません
https://www.nicovideo.jp/watch/sm7881602
チップ炙りの先人:rerofumiさん
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
こんな本です
コンピュータが進化して複雑になってきた
「わからない」という不安・あきらめ
高度に進化した科学技術は魔法と区別がつかない
「わかると、より楽しい」
必要ならば中を理解できる
必要ならば改造できる
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
Contents(前半)
コンピュータを、
・上から下へ
・下から上へ
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
こんなイメージ?:Powers of Ten
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
勝手に親近感
分解という道具をもつ
=世界の理解
分解することで
「いじれる」
=脱ブラックボックス
Interface Device Laboratory, Kanazawa University http://ifdl.jp/
コンピュータの歴史と階層構造
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
コンピュータの階層構造
電子回路→コンピュータの継続性
ハードウエア=回路
ソフトウエア=プログラム
本来はつながっている知識学問体系
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
コンピュータの歴史と半導体
(1946)
真空管: 18,000本
消費電力: 140kW
サイズ: 30m×3m×1m
演算性能: 5,000加算/s
(ENIAC:世界最初のコンピュータ)
(2007)
最小加工寸法: 0.065μm(65nm)
素子数: ~50,000,000
消費電力: 100W~数mW
サイズ: 10mm×10mm程度
演算性能: 10,000,000,000演算/s
(1960)集積回路(IC)の発明
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
コンピュータの歴史の2つの側面
DEC VAX(1976)
1MIPS
Cray-1 (1978)
100MIPS
MIPS:Million Instruction Per Second (1秒間に実行できる命令数)
(世界最初のスーパーコンピュータ)
「世界トップの高速化」+「身近なものにも高速化の恩恵」の2つの側面がある
20000MIPS
10MIPS
100MIPS
20MIPS
20000MIPS
109MFLOPS
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
コンピュータの「使い方」の変化
国に1台/会社に1台 個人で1台(PC) 一人で何台も
仕事・勉強の道具国・会社のプロジェクト
コミュニケーション
・遊びの道具
>1億円 10〜100万円 数万円
身の回りに無数
存在に
気づかない
〜100円
大昔のコンピュータ 一昔前のコンピュータ 今どきのコンピュータ
コンピュータの利用場面(アプリケーション)が広がった
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
集積回路(IC)の発明
US Patent No. 2 981 877 (R. Noyce)
(1961)
US Patent No. 2 138 743 (J. Kilby)
(1959)
電子回路を半導体(ケイ素=シリコン)に作り込んだもの
※IC = Integrated Circuit
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
半導体→トランジスタ→集積回路
ref: http://imasaracmosanalog.blog111.fc2.com/category33-1.html
A X
X=not A
A X
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
ICの進化の歴史:Mooreの法則
ref: http://www.intel.com/jp/intel/museum/processor/index.htm
傾き:×約1.5/年
年を追って、複雑・高機能な集積回路がつくられるようになった
※G.Moore (インテルの創業者の一人)
G.Mooreが1965年に論文[1]で述べる→C.Meadが「法則」と命名→「予測」→「指針(目標)」へ
G.E.Moore, "Cramming more components onto integrated circuits," IEEE Solid-State Circuit Newsletter, Vol.11, No.5, pp.33-35, 1965.
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
Mooreの法則のカラクリ:スケーリング
集積回路の部品(MOSトランジスタ)を、同じ形状で、
より小さく作ると・・・?
寸法: 1/α
不純物濃度: α
電源電圧: 1/α
p-Si
S DG
n-Sin-Si
p-Si
S DG
n-Sin-Si
L
R.H.Dennard et al., "Design of ion-implanted MOSFET's with very small physical dimensions," IEEE J.of SSC, Vol.9, No.5, pp.256-268, 1974.
MOSトランジスタの断面構造
※正確には、S−D間の電界強度を一定のまま、サイズを小さくする
E = V / d → V→V/α&d→d/α → E = (V/α) / (d/α) = V/d (一定)
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
スケーリングの効果
効果:いいことばかり
速度↑
消費電力↓
集積度(機能)↑
技術が進むべき方向性が極めて明確なまれなケース
例:クルマの性能は・・・?
p-Si
S DG
n-Sin-Si
p-Si
S DG
n-Sin-Si
L
• 素子面積:1/α2
• 素子密度:α2
• 電流I:1/α (←電圧:1/α)
• 容量C:1/α (←C=εS/d, S:1/α2, d:1/α)
• 抵抗R:α (←R=ρL/S, S:1/α2, L:1/α)
• 回路遅延:1/α (←E:一定, S-D間:1/α)
• 消費電力:1/α2 (←V:1/α, I:1/α)
• 配線遅延時間CR:1 (変わらない)
※MOSトランジスタを
上から見たところ
(素子1個の専有面積)
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
般若心経だと・・・
1um
0.8um
0.5um
0.35um
18ヶ月
18ヶ月
18ヶ月
同じ用紙サイズなら文字数2倍
=機能2倍
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
般若心経だと・・・(その2)
1um
18ヶ月
18ヶ月
0.5um
0.8um
同じ内容なら用紙サイズ1/2
=コスト1/2
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
(おまけ)
https://booth.pm/ja/items/1247719
https://booth.pm/ja/items/1226529
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
Mooreの法則のわかりやすい例
マイコン(ATmega328P/PB)の例
機能:ATmega328P < ATmega328PB(上位互換)
価格:ATmega328P > ATmega328PB(30%安価)
0.6umくらいだと、製造コストはほぼチップ面積
ATmega328P(1.2umルール?) ATmega328PB(0.6umルール?)
詳細:http://ifdl.jp/blog/?p=1197
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
MOSトランジスタの微細化の歴史
微細化するほど
メリットがある
=がんばって微細化
そろそろ「原子」が
見えてきている
「お金がからむと
技術は進む」
ref: 日経BP Tech-On! 2009/03/30の記事
L=20nm(いま)
L=5nm(2020年ごろ予定)
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
Mooreの法則の意味するところ
誰も損をしないトレードオフのない進化
性能↑
消費電力↓
コスト↓
言い換えれば、全ては「ゼロ」に向かう
チップ面積、価格
だからこそ、「価値」を探すことが必要
価値のためには面積が必要
Ref: #分解のススメ 4:清水洋治氏(テカナリエ)
https://www.youtube.com/watch?v=C1NGYSLoi6Y
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
最近のCPU(※イメージ)
Intel Core i7 (2008)トランジスタ(素子)数~10億個
cf: 地球の人口~70億人、中国の人口~13億人
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
最近のソフトとハードの関係
学問体系レベル・実務レベル
ソフト=プログラミング→ネットワーク
ハード=電子回路→コンピュータアーキテクチャ
学問体系として分かれつつある(←複雑化)
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
似た現象?:化学〜生物学・医学
化学〜生物学・医学の学問体系
脳・知能
生物(多細胞生物)
細胞
タンパク質・DNA
分子・原子
化学と生物学をつなごうとする試み:
分子生物学、生物物理学、・・・
まだ成功はしていない
超えられない壁?
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
SW/HWが断絶した世界とは?
コンピュータの構成要素(トランジスタ)の「ガン化」
コンピュータ=決定論的システム(動作結果は計画通り)
=構成要素の完全動作が前提
微細化→量子効果等による動作の不確実性↑
「電流が流れないはず」のところで、流れる(ことがある)
現状では、製造技術や設計技術で、なんとか抑え込む
そろそろヤバい(回路が思うとおりに動かなくなる)
「ハード屋」の言い分:ソフトウエアでなんとかしてくれ
「ソフト屋」の言い分:ハードウエアでなんとかしてくれ
int i = 1;
int a = 1, b = 2;
c = a + b;
このプログラムで、
i=1, c = 3 とならない(かも)
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
どれくらいギリギリなのか?
S→Dに流れる電流を、Gに加える電圧でON/OFF
不安要因
製造ばらつき(設計通りの形状にならない)
不純物ばらつき(電気特性が設計通りにならない)
トンネル効果(OFFにしたつもりが電子が通り抜ける)
ref: https://slideplayer.com/slide/7843454/
Si原子(直径0.2nm)
×50
=
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
コンピュータの中身が見えなくなる
https://hardware.srad.jp/story/18/05/25/0450230/
https://security.srad.jp/story/18/05/08/0919252/
http://www.itmedia.co.jp/news/articles/
1806/15/news079.html
「正しく動作する」と
信じていたものが・・・
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
CPUを「つくる」ことでわかること
仕組みを理解できる
回路→頭脳につながる瞬間
「ヤバそう」ぐらいは
わかるかも
少なくとも中で何が起こって
いるか、は見えるはず
小規模:手設計でいけそう
大規模:どうやろう?
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
CPUをどう「つくる」のか?(1)
論理ICを並べて手配線→4bitくらい
さすがに手設計はこれぐらいが限界
HDLで書く→8bitくらい
PICくらいなら、慣れればできる
教科書的なRISCアーキテクチャ
ATtiny10のアーキテクチャ
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
CPUをどう「つくる」のか?(1)
IPをもってきてカスタマイズ→16bit以上
HDL等でCPUの「ソース」をもってくる
それを「コンパイル」して回路にする
周辺(タイマ等)は自分でカスタマイズできる
https://developer.arm.com/products/designstart
ARM Design Start
Cortex-M0/M3のソース
量産するときに課金
https://opencores.org/
OpenCores.org
各種MPU等のHDLソース
SHなどもある
RISC-V
オープンソース、
階層的なISA(命令セット)
各種実装あり
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
RISC-Vを「コンパイル」してみた
CMOS 0.6um 3Al
1.8x1.8mm
〜3k gate
subset of RV32I
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
Contents(後半)
分解の道具立て
(基板揚げ、チップ炙り)
コンピュータの再構成
道具になる半導体
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
基板を揚げる
要は、基板全体を、ハンダが溶ける温度に
保てば良い
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
※挿入実装と表面実装
図4.3
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
半導体チップはどこにある?
「電気で動くもの」には、だいたい入ってる
普通は黒いパッケージの中にあり、見えない
PlayStation2をバラした基板
コレ
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
中身が見える半導体チップ
UV-EPROM
WS2812
(NeoPixel)
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
チップを顕微鏡で見てみる
秋月のWS2812 WorldSemiでもらってきたWS2812
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
見えないチップはどうする?
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
半導体チップの取り出し方
濃硫酸・発煙硝酸に入れて加熱し、
パッケージを溶かす
どこのご家庭にもある道具 ・・・ねぇよ!
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
炙る
どこのご家庭にもあるBBQバーナー
(カセットコンロボンベ使用)
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
崩す
どこのご家庭にもある爪楊枝などで
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
拝む
どこのご家庭にもあるスマホのマクロ撮影で
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
分析する
詳しくはコチラ→https://note.mu/akita11/
一番細い配線パターンが見えた!
倍率をあげならが、
特徴ある形状を基準に
サイズを計測していく
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
分析(1): ATmega328P/PB(1)
ATmega328P:ArduinoUNO等でおなじみ
ATmega328PB:↑の上位互換(UARTx2等)、安価
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
分析(1): ATmega328P/PB(2)
ATmega328P
メタル間隔:1.8um
ATmega328PB
メタル間隔:0.6um
※0.6umプロセスあたり
までは5V動作OK
詳細は→https://note.com/akita11/
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
分析(2): PL2303のニセモノ(Rev.C)
純正(たぶん) 安っぽいマーキング
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
分析(2): PL2303のニセモノ(Rev.A)
45円@AliExp
マーク消し Aitendoで購入
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
分析(2): PL2303のニセモノ(沼)
PL2303のニセモノ各種
@tomonさん提供
実はPL2303は、
FT232のピン互換・安価品
実はUSBシリアル変換ICは
ぜんぶマイコンなんじゃ?説(@Ohkiさん)
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
実はUSBシリアル変換ICは
ぜんぶマイコンなんじゃ?説(by @Ohkiさん)
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
より詳しく知りたい方は・・・
紹介記事→
https://medium.com/分解のススメ/techanalye-983589cb499d
購読申込→https://forms.gle/HWgLqhiG7Tr2YJLk6
Interface Device Laboratory, Kanazawa University http://ifdl.jp/
コンピュータの再構成
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
コンピュータの動作と論理回路
RISC-Vを題材に、命令セットと制御の流れを
https://uzuarai.booth.pm/items/1572579
Interface Device Laboratory, Kanazawa University http://ifdl.jp/
道具になる半導体
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
「マイコン」という概念
マイコン=Micro-controller
/ Micro-computer
技術的には:枯れた技術の固まり
RISC, Flashメモリ, ...
ハーバードアーキテクチャ, …
使い方的には・・・?
「コンピュータ」が安く小さくなることの意義
単なる「安くて小さいコンピュータ」ではない
パラダイム(常識・概念)の転換(の可能性)
(Atmel ATtiny10データシートより)
(日立/Renesas H8/3048F)
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
コンピュータが「頭脳」から「部品」に
出典:ARM
機器の頭脳
関節ごとに小さい脳(神経節)
コンピュータが、システムの「主役」から「構成要素(部品)」になった
※基本的には「コンピュータ」だが、小型で安価
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
「Lチカ」から考える半導体
=「LEDチカチカ」(LED Blink)
「LEDを点滅させる」こと
プログラミングにおける”Hello World”的なもの
(まず始めに試すやつ)
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
※ウソです
広辞林(第6版)より
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
日本工業標準調査会(JISC)
JIS規格一覧
※ウソです
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
PCで「Lチカ」・・・?
while(1){
a = 1;
sleep(1);
a = 0;
sleep(1);
}
「可能」ではあるが、「現実的」ではない
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
マイコン使用
部品点数=1
コスト:100円
発振回路(555)
部品点数=4
コスト:150円
「Lチカ」のパラダイムシフト
コスト面:マイコン○(「もったいなくない」)
機能面:マイコン○(多機能・仕様変更も容易)
while(1){
a = 1;
sleep(1);
a = 0;
sleep(1);
}
※さすがにPCではちょっと・・・
Mooreの法則の結果、コンピュータが「部品」になった例
昔のLチカ
今どきのLチカ
※マイコン=Micro Controller(小さなコンピュータ)
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
価格が起こしたパラダイムシフト
シリアル制御フルカラーLED“NeoPixel”
電源+1本のシリアル制御線で複数制御
超安価 (~3円/pcs)
普通のLEDより安い
LEDディスプレイなど大量に使われるようになった
制御チップは1umルール程度(かなり安い)
Ref:https://news.nicovideo.jp/watch/nw4240213
Interface Device Laboratory, Kanazawa University http://ifdl.jp/
半導体を「道具」として持つこと
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
集積回路(IC)は「道具」か?:調査
https://www.youtube.com/watch?v=A188CYfuKQ0
http://www.nicovideo.jp/watch/sm23660093
CMOS 0.18um 5Al
2.5mm x 2.5mm
RingOSC x 1001
T-FF (Div)
(※LSI=集積回路のこと)
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
Lチカ動画:ニコ動でのコメント
 こっから?
 ニコ技界のTOKIO
 ゲートの無駄遣い
 ここから!!?
 ひでえ、勿体ない使い方wwwww
 マジかよ。レジストレベルの設計とか
ガチすぎる。
 無駄遣い過ぎるだろw
 贅沢というかなんというか
 え?まじでここからかよ」wwww」」
 IC版FusionPCB的なところが現れれば・・・
 (FPGAでは)いかんのか?
 俺はFPGAで我慢することにする
 いや、そこまでは必要ないです
 量産品すらFPGA使う時代に専用LSI・・・
 アマチュアはFPGAで良いんだよなぁ・・・w
「集積回路=すごいことをやるためのもの」という意識
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
なんでこんなアホなことを?
LSIは「道具」になりきっているか?
オレLSI
「作る?ちょっとそこまでは・・・」「使うけど・・・」
他の技術はどうなってきたか?
コンピュータ:大型機→PC
マイコン:H8→Arduino
プリント基板:業務用→アマチュア
3Dプリンタ:業務用→フィギュア
動画編集:映画→YouTube/ニコ動
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
ムーアの法則がもたらしたもの(2)
LSI設計・製造コストの高騰
シャトル製造サービス〜$1k
製造初期コスト(マスク)〜$1M
設計ツール 〜$1M
秘密保持契約(NDA; Non Disclosure Agreement)
: Priceless
製造工場 〜$1G
cf:プリント基板製造($10~)、Arduino($10~)
cf: 設計CAD&コンパイラ(IDE)(Free~)
「専用LSIつくってLチカ」ってもったいない&無駄遣いすぎる
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
「道具」としての集積回路
「ハード」=電子回路、プリント基板あたり
「集積回路(半導体チップ)」までは、なかなか
どうしても「今あるもの・使えるもの」を使う
カメラ、Kinect、マイコン、FPGA・・・
新技術で、一気にパラダイムが変わることがある
「集積回路をつくれる」という道具
=「いまできること」という発想の縛りから開放
Depth画像
※昔は「可能だが高価」
→Kinect後は「誰でも使える」
→ユーザインタフェース界の革命
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
LチカLSI ver2(センサ)
タッチセンサ 光センサ ※北九州学術研究都市 共同研究開発センターの半導体試作施設において、
(一財)ファジィシステム研究所の協力の下、他大学学生のLSI製造演習として
試作されました
CMOS 2um 2Al
3.2mm x 3.2mm
https://www.youtube.com/watch?v=NN1wNf66vXw
http://www.nicovideo.jp/watch/sm24280073
CAD:フリーウエア(Inkscape)
製造:北九州の時間貸しクリーンルーム
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
センサを「つくる」
基本、物理法則に沿っていれば
「何でもできる」
微細構造、界面、・・・
ADCなどの信号処理回路も集積OK
逆に、自由度が高すぎて、難しい
電子回路
量子力学
電磁気学
・・・
ref: https://tech.nikkeibp.co.jp/dm/article/WORD/20090415/168824/
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
「自作Cortex-M0でLチカ」:やってみた
0: 23a0 movs r3, #160 ; 0xa0
2: 05db lsls r3, r3, #23
4: 4c0b ldr r4, [pc, #44]
6: 4f0c ldr r7, [pc, #48]
8: 2201 movs r2, #1
a: 601a str r2, [r3, #0]
c: 2500 movs r5, #0
e: 6025 str r5, [r4, #0]
10: 2600 movs r6, #0
12: 3601 adds r6, #1
14: 42be cmp r6, r7
16: d1fc bne.n 12 <main+0x12>
18: 3501 adds r5, #1
1a: 2dff cmp r5, #255 ; 0xff
1c: d1f7 bne.n e <main+0xe>
1e: 2200 movs r2, #0
20: 601a str r2, [r3, #0]
22: 25ff movs r5, #255 ; 0xff
24: 2600 movs r6, #0
26: 3601 adds r6, #1
28: 42be cmp r6, r7
2a: d1fc bne.n 26 <main+0x26>
2c: 3d01 subs r5, #1
2e: 2d00 cmp r5, #0
30: d1f8 bne.n 24 <main+0x24>
32: e7e9 b.n 8 <main+0x8>
34: 50000004
38: 0000270f
#define GPIO 0x50000000
#define PWMDUTY 0x50000001
#define WAIT 10000 // 3,000,000=0.3s / 256 -> 10,000
void main()
{
volatile unsigned int w;
volatile unsigned int d;
while(1){
*(volatile unsigned int *)GPIO = 0x0001;
for (d = 0; d < 256; d++){
*(volatile unsigned int *)PWMDUTY = d;
for (w = 0; w < WAIT; w++);
}
*(volatile unsigned int *)GPIO = 0x0000;
for (d = 255; d >= 0; d--){
*(volatile unsigned int *)PWMDUTY = d;
for (w = 0; w < WAIT; w++);
}
}
}
arm-gcc/gas
VerilogHDL
module imem(clk, addr, data2);
input clk;
input [31:0] addr;
output [31:0] data2;
reg [31:0] data, data2;
// 0x00000000 - 0x1fffffff : code (0x00000000-0x000000c0: int.vec.)
// code memory: little-endian (LSB=1st byte / MSB=2nd byte)
wire [31:0] addr2;
assign addr2 = {addr[31:2], 2'b00};
always @(addr2) begin
case (addr2)
32'h00000000 : data <= 32'h0020000; // insital SP
32'h00000004 : data <= 32'h0000101; // reset (bit[0]=T)
32'h00000100 : data <= {16'h05db,16'h23a0};
32'h00000104 : data <= {16'h4f0d,16'h4c0c};
32'h00000108 : data <= {16'h601a,16'h2201};
32'h0000010c : data <= {16'h6025,16'h2500};
32'h00000110 : data <= {16'h3601,16'h2600};
32'h00000114 : data <= {16'hd1fc,16'h42be};
32'h00000118 : data <= {16'h2dff,16'h3501};
32'h0000011c : data <= {16'h2200,16'hd1f7};
32'h00000120 : data <= {16'h25ff,16'h601a};
32'h00000124 : data <= {16'h2600,16'h6025};
32'h00000128 : data <= {16'h42be,16'h3601};
32'h0000012c : data <= {16'h3d01,16'hd1fc};
32'h00000130 : data <= {16'hd1f7,16'h2d00};
32'h00000134 : data <= {16'h0000,16'he7e8};
32'h00000138 : data <= 32'h50000004;
32'h0000013c : data <= 32'd1999;
default: data <= 32'h0;
endcase
end
always @(posedge clk) begin
data2 <= data;
end
endmodule
「Lチカ」&「Lほわ」
Thumb命令
機械語の
プログラム
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
「Lチカ専用Cortex-M0」:設計してみた
CMOS 0.18um 5Al
0.55mm x 0.65mm
※このチップの設計は、東京大学大規模集積システム設計教育研究センターを通し、
日本ケイデンス株式会社、シノプシス株式会社研究センターの協力で行われたものです。
※このチップの設計で使用したライブラリは、京都大学情報学研究科 田丸・小野寺研究室の
成果によるもので、京都工芸繊維大学 小林和淑教授によりリリースされたものです。
※このチップの試作は、東京大学大規模集積システム設計教育研究センターを通し、
ローム(株)および凸版印刷(株)の協力で行われたものです。
Synopsys
Design Compiler
& IC Compiler
※クロック周波数=10MHz
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
オレLSI:アナログLSI
アナログ回路の「部品」をつないで設計
CMOS 0.18um
1P5M
CMPx2+DFF+DisChgTr
本家とピン互換
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
オレLSI:AI向けも
AI/深層学習向けのプロセッサ
従来型の「ノイマン型コンピュータ」では苦手
いわゆるASIC(特定用途向けIC)だが、
少量多品種向け
GoogleのTPU (Tensorflow Processing Unit)の例
ref: https://news.mynavi.jp/article/20170411-tpu/2
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
オレLSI:IoT向けも
IoTは、本質的に「少量多品種」
使う場面ごとに、必要な機能・性能が異なる
情報処理のやり方も多様(端末側?サーバ?)
環境発電(太陽電池、振動発電など)など、
超低消費電力が必要な場面も多い
センサ プロセッサ 通信
記録 電源
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
集積回路を「つくる」ためのハードル
設計CAD
市販の業務用CAD: 高すぎ、高機能すぎ
製造方法
高すぎ、時間かかりすぎ(1000万円・半年)
NDA(設計ルールなどのアクセス制限)が厳しすぎ
ユーザ・コミュニティ
参入障壁:現状は専門家ばかり
“How”の専門家は多いが、”Why/What”は皆無
いずれも、なんとかなりそう?
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
オレLSIをつくってみたい:実践
情報収集・整理
探せば、ないことはない
仲間さがし
やや古めのテクノロジで
NDAフリー
&オープンソース
GitHubで回路をシェア
http://j.mp/make_lsi
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
・・・と思っていたら
NDA不要・オープンソースなチップ設計環境
やや議論が発散気味な印象だが、猛スピードで整備中
予定では11月に相乗り試作
「なんてNDAなしでできたんですかね?」
→「だって130nmなんて枯れた技術だし、
隠すより、エコシステム作ったほうがいいじゃん?」
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
チップを「つくる」
(イメージ:近い将来)
設計する(GDS形式)
データをupload
チップが届く
cf: プリント基板
設計する(gerber形式)
Webからデータをupload
基板が届く
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
1um?0.5in?いえいえ、けっこう使えます
1[um]/3Alプロセス・0.5inウエハに
Cortex-M0コアが4ショットは入る
カスタムなペリフェラル・アナログ・センサ・MEMS
の混載も(これが数万円&1週間@1個から)
※0.18[um]/3Alでの配置配線結果の
レイアウトデータ(GDS)を1/0.18=28倍に
拡大して作成
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
LSIが道具になるとは・・・
『3Dプリンタは、私たちに「何をつくりたいの
か」を問いかけているのです。』
あなたなら、何を作りますか?
いまのうちから、考えておいても
損はないはず。
2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
おまけ
https://akita111.booth.pm/items/838270

Weitere ähnliche Inhalte

Was ist angesagt?

リモート環境を整備してみた
リモート環境を整備してみたリモート環境を整備してみた
リモート環境を整備してみたJunichi Akita
 
CH551/2/8/9を炙ってみた
CH551/2/8/9を炙ってみたCH551/2/8/9を炙ってみた
CH551/2/8/9を炙ってみたJunichi Akita
 
道具としての半導体設計:Lチカを題材として
道具としての半導体設計:Lチカを題材として道具としての半導体設計:Lチカを題材として
道具としての半導体設計:Lチカを題材としてJunichi Akita
 
ICのオーパーツを探ってみた
ICのオーパーツを探ってみたICのオーパーツを探ってみた
ICのオーパーツを探ってみたJunichi Akita
 
CH340を炙って削ってみた
CH340を炙って削ってみたCH340を炙って削ってみた
CH340を炙って削ってみたJunichi Akita
 
AI・IoT時代のテクノロジーとの付き合い方
AI・IoT時代のテクノロジーとの付き合い方AI・IoT時代のテクノロジーとの付き合い方
AI・IoT時代のテクノロジーとの付き合い方Junichi Akita
 
カスタムLSIが道具になるために
カスタムLSIが道具になるためにカスタムLSIが道具になるために
カスタムLSIが道具になるためにJunichi Akita
 
道具としての電子回路・半導体
道具としての電子回路・半導体道具としての電子回路・半導体
道具としての電子回路・半導体Junichi Akita
 
チップレベルでカスタマイズできることで見える世界の体験
チップレベルでカスタマイズできることで見える世界の体験チップレベルでカスタマイズできることで見える世界の体験
チップレベルでカスタマイズできることで見える世界の体験Junichi Akita
 
日本のメイカー活動とNT金沢
日本のメイカー活動とNT金沢日本のメイカー活動とNT金沢
日本のメイカー活動とNT金沢Junichi Akita
 
Cortex-M0プロセッサから自作して Lチカをやってみた
Cortex-M0プロセッサから自作してLチカをやってみたCortex-M0プロセッサから自作してLチカをやってみた
Cortex-M0プロセッサから自作して LチカをやってみたJunichi Akita
 
好きな活動から始めるイノベーションの種
好きな活動から始めるイノベーションの種好きな活動から始めるイノベーションの種
好きな活動から始めるイノベーションの種Junichi Akita
 
AIB○的な何かを分解してみた
AIB○的な何かを分解してみたAIB○的な何かを分解してみた
AIB○的な何かを分解してみたJunichi Akita
 
センサ端末構築を牽引するマイコン・LSI技術とその動向
センサ端末構築を牽引するマイコン・LSI技術とその動向センサ端末構築を牽引するマイコン・LSI技術とその動向
センサ端末構築を牽引するマイコン・LSI技術とその動向Junichi Akita
 
集積回路が真の道具になるために
集積回路が真の道具になるために集積回路が真の道具になるために
集積回路が真の道具になるためにJunichi Akita
 
M5Stackで授業をやってみた
M5Stackで授業をやってみたM5Stackで授業をやってみた
M5Stackで授業をやってみたJunichi Akita
 
「LED点滅用のLSIをつくって Lチカをやってみた」のココロ
「LED点滅用のLSIをつくってLチカをやってみた」のココロ「LED点滅用のLSIをつくってLチカをやってみた」のココロ
「LED点滅用のLSIをつくって Lチカをやってみた」のココロJunichi Akita
 
アナログ回路の民主化とプロの役割
アナログ回路の民主化とプロの役割アナログ回路の民主化とプロの役割
アナログ回路の民主化とプロの役割Junichi Akita
 
道具としての「ハードウエア」
道具としての「ハードウエア」道具としての「ハードウエア」
道具としての「ハードウエア」Junichi Akita
 
シリアルフラッシュを炙って比べてみた
シリアルフラッシュを炙って比べてみたシリアルフラッシュを炙って比べてみた
シリアルフラッシュを炙って比べてみたJunichi Akita
 

Was ist angesagt? (20)

リモート環境を整備してみた
リモート環境を整備してみたリモート環境を整備してみた
リモート環境を整備してみた
 
CH551/2/8/9を炙ってみた
CH551/2/8/9を炙ってみたCH551/2/8/9を炙ってみた
CH551/2/8/9を炙ってみた
 
道具としての半導体設計:Lチカを題材として
道具としての半導体設計:Lチカを題材として道具としての半導体設計:Lチカを題材として
道具としての半導体設計:Lチカを題材として
 
ICのオーパーツを探ってみた
ICのオーパーツを探ってみたICのオーパーツを探ってみた
ICのオーパーツを探ってみた
 
CH340を炙って削ってみた
CH340を炙って削ってみたCH340を炙って削ってみた
CH340を炙って削ってみた
 
AI・IoT時代のテクノロジーとの付き合い方
AI・IoT時代のテクノロジーとの付き合い方AI・IoT時代のテクノロジーとの付き合い方
AI・IoT時代のテクノロジーとの付き合い方
 
カスタムLSIが道具になるために
カスタムLSIが道具になるためにカスタムLSIが道具になるために
カスタムLSIが道具になるために
 
道具としての電子回路・半導体
道具としての電子回路・半導体道具としての電子回路・半導体
道具としての電子回路・半導体
 
チップレベルでカスタマイズできることで見える世界の体験
チップレベルでカスタマイズできることで見える世界の体験チップレベルでカスタマイズできることで見える世界の体験
チップレベルでカスタマイズできることで見える世界の体験
 
日本のメイカー活動とNT金沢
日本のメイカー活動とNT金沢日本のメイカー活動とNT金沢
日本のメイカー活動とNT金沢
 
Cortex-M0プロセッサから自作して Lチカをやってみた
Cortex-M0プロセッサから自作してLチカをやってみたCortex-M0プロセッサから自作してLチカをやってみた
Cortex-M0プロセッサから自作して Lチカをやってみた
 
好きな活動から始めるイノベーションの種
好きな活動から始めるイノベーションの種好きな活動から始めるイノベーションの種
好きな活動から始めるイノベーションの種
 
AIB○的な何かを分解してみた
AIB○的な何かを分解してみたAIB○的な何かを分解してみた
AIB○的な何かを分解してみた
 
センサ端末構築を牽引するマイコン・LSI技術とその動向
センサ端末構築を牽引するマイコン・LSI技術とその動向センサ端末構築を牽引するマイコン・LSI技術とその動向
センサ端末構築を牽引するマイコン・LSI技術とその動向
 
集積回路が真の道具になるために
集積回路が真の道具になるために集積回路が真の道具になるために
集積回路が真の道具になるために
 
M5Stackで授業をやってみた
M5Stackで授業をやってみたM5Stackで授業をやってみた
M5Stackで授業をやってみた
 
「LED点滅用のLSIをつくって Lチカをやってみた」のココロ
「LED点滅用のLSIをつくってLチカをやってみた」のココロ「LED点滅用のLSIをつくってLチカをやってみた」のココロ
「LED点滅用のLSIをつくって Lチカをやってみた」のココロ
 
アナログ回路の民主化とプロの役割
アナログ回路の民主化とプロの役割アナログ回路の民主化とプロの役割
アナログ回路の民主化とプロの役割
 
道具としての「ハードウエア」
道具としての「ハードウエア」道具としての「ハードウエア」
道具としての「ハードウエア」
 
シリアルフラッシュを炙って比べてみた
シリアルフラッシュを炙って比べてみたシリアルフラッシュを炙って比べてみた
シリアルフラッシュを炙って比べてみた
 

Ähnlich wie 「揚げて炙ってわかる コンピュータの仕組み」の舞台裏

集積回路工学第2・第13回資料
集積回路工学第2・第13回資料集積回路工学第2・第13回資料
集積回路工学第2・第13回資料Junichi Akita
 
情報工学の道具としての ハードウエアと半導体
情報工学の道具としてのハードウエアと半導体情報工学の道具としてのハードウエアと半導体
情報工学の道具としての ハードウエアと半導体Junichi Akita
 
道具としての半導体:HCI分野での例
道具としての半導体:HCI分野での例道具としての半導体:HCI分野での例
道具としての半導体:HCI分野での例Junichi Akita
 
ハードウエア教材における「失敗」の意義
ハードウエア教材における「失敗」の意義ハードウエア教材における「失敗」の意義
ハードウエア教材における「失敗」の意義Junichi Akita
 
Makeと半導体の過去と未来
Makeと半導体の過去と未来Makeと半導体の過去と未来
Makeと半導体の過去と未来Junichi Akita
 
Makers:近未来のものづくり
Makers:近未来のものづくりMakers:近未来のものづくり
Makers:近未来のものづくりJunichi Akita
 
Makerの道具としての ハードウエアと半導体
Makerの道具としてのハードウエアと半導体Makerの道具としてのハードウエアと半導体
Makerの道具としての ハードウエアと半導体 Junichi Akita
 
A Chainer MeetUp Talk
A Chainer MeetUp TalkA Chainer MeetUp Talk
A Chainer MeetUp TalkYusuke Oda
 
中国でスタックチャンに会ってみた
中国でスタックチャンに会ってみた中国でスタックチャンに会ってみた
中国でスタックチャンに会ってみたJunichi Akita
 
3Dプリンタを改造してチップマウンタを作ってみたら物理的にForkされた件
3Dプリンタを改造してチップマウンタを作ってみたら物理的にForkされた件3Dプリンタを改造してチップマウンタを作ってみたら物理的にForkされた件
3Dプリンタを改造してチップマウンタを作ってみたら物理的にForkされた件Junichi Akita
 
M5Stackでインターンしてみた
M5StackでインターンしてみたM5Stackでインターンしてみた
M5StackでインターンしてみたJunichi Akita
 
メイカームーブメント:その背景と現状
メイカームーブメント:その背景と現状メイカームーブメント:その背景と現状
メイカームーブメント:その背景と現状Junichi Akita
 
産業としての半導体とムーアの法則
産業としての半導体とムーアの法則産業としての半導体とムーアの法則
産業としての半導体とムーアの法則Junichi Akita
 
日本の「ものづくり」の可能性:中国深センとの比較を通して
日本の「ものづくり」の可能性:中国深センとの比較を通して日本の「ものづくり」の可能性:中国深センとの比較を通して
日本の「ものづくり」の可能性:中国深センとの比較を通してJunichi Akita
 
基板設計の基礎知識と実践(別名:基板と仲良くなる方法)
基板設計の基礎知識と実践(別名:基板と仲良くなる方法)基板設計の基礎知識と実践(別名:基板と仲良くなる方法)
基板設計の基礎知識と実践(別名:基板と仲良くなる方法)Junichi Akita
 
Makeの最後の砦(ラスボス):半導体への挑戦
Makeの最後の砦(ラスボス):半導体への挑戦Makeの最後の砦(ラスボス):半導体への挑戦
Makeの最後の砦(ラスボス):半導体への挑戦Junichi Akita
 
分解のススメHyperの読みどころ
分解のススメHyperの読みどころ分解のススメHyperの読みどころ
分解のススメHyperの読みどころJunichi Akita
 
機械学習を民主化する取り組み
機械学習を民主化する取り組み機械学習を民主化する取り組み
機械学習を民主化する取り組みYoshitaka Ushiku
 
ArcFace: Additive Angular Margin Loss for Deep Face Recognition
ArcFace: Additive Angular Margin Loss for Deep Face RecognitionArcFace: Additive Angular Margin Loss for Deep Face Recognition
ArcFace: Additive Angular Margin Loss for Deep Face Recognitionharmonylab
 
コンピュータのソフトとハードの境界、そしてIoTへ
コンピュータのソフトとハードの境界、そしてIoTへコンピュータのソフトとハードの境界、そしてIoTへ
コンピュータのソフトとハードの境界、そしてIoTへJunichi Akita
 

Ähnlich wie 「揚げて炙ってわかる コンピュータの仕組み」の舞台裏 (20)

集積回路工学第2・第13回資料
集積回路工学第2・第13回資料集積回路工学第2・第13回資料
集積回路工学第2・第13回資料
 
情報工学の道具としての ハードウエアと半導体
情報工学の道具としてのハードウエアと半導体情報工学の道具としてのハードウエアと半導体
情報工学の道具としての ハードウエアと半導体
 
道具としての半導体:HCI分野での例
道具としての半導体:HCI分野での例道具としての半導体:HCI分野での例
道具としての半導体:HCI分野での例
 
ハードウエア教材における「失敗」の意義
ハードウエア教材における「失敗」の意義ハードウエア教材における「失敗」の意義
ハードウエア教材における「失敗」の意義
 
Makeと半導体の過去と未来
Makeと半導体の過去と未来Makeと半導体の過去と未来
Makeと半導体の過去と未来
 
Makers:近未来のものづくり
Makers:近未来のものづくりMakers:近未来のものづくり
Makers:近未来のものづくり
 
Makerの道具としての ハードウエアと半導体
Makerの道具としてのハードウエアと半導体Makerの道具としてのハードウエアと半導体
Makerの道具としての ハードウエアと半導体
 
A Chainer MeetUp Talk
A Chainer MeetUp TalkA Chainer MeetUp Talk
A Chainer MeetUp Talk
 
中国でスタックチャンに会ってみた
中国でスタックチャンに会ってみた中国でスタックチャンに会ってみた
中国でスタックチャンに会ってみた
 
3Dプリンタを改造してチップマウンタを作ってみたら物理的にForkされた件
3Dプリンタを改造してチップマウンタを作ってみたら物理的にForkされた件3Dプリンタを改造してチップマウンタを作ってみたら物理的にForkされた件
3Dプリンタを改造してチップマウンタを作ってみたら物理的にForkされた件
 
M5Stackでインターンしてみた
M5StackでインターンしてみたM5Stackでインターンしてみた
M5Stackでインターンしてみた
 
メイカームーブメント:その背景と現状
メイカームーブメント:その背景と現状メイカームーブメント:その背景と現状
メイカームーブメント:その背景と現状
 
産業としての半導体とムーアの法則
産業としての半導体とムーアの法則産業としての半導体とムーアの法則
産業としての半導体とムーアの法則
 
日本の「ものづくり」の可能性:中国深センとの比較を通して
日本の「ものづくり」の可能性:中国深センとの比較を通して日本の「ものづくり」の可能性:中国深センとの比較を通して
日本の「ものづくり」の可能性:中国深センとの比較を通して
 
基板設計の基礎知識と実践(別名:基板と仲良くなる方法)
基板設計の基礎知識と実践(別名:基板と仲良くなる方法)基板設計の基礎知識と実践(別名:基板と仲良くなる方法)
基板設計の基礎知識と実践(別名:基板と仲良くなる方法)
 
Makeの最後の砦(ラスボス):半導体への挑戦
Makeの最後の砦(ラスボス):半導体への挑戦Makeの最後の砦(ラスボス):半導体への挑戦
Makeの最後の砦(ラスボス):半導体への挑戦
 
分解のススメHyperの読みどころ
分解のススメHyperの読みどころ分解のススメHyperの読みどころ
分解のススメHyperの読みどころ
 
機械学習を民主化する取り組み
機械学習を民主化する取り組み機械学習を民主化する取り組み
機械学習を民主化する取り組み
 
ArcFace: Additive Angular Margin Loss for Deep Face Recognition
ArcFace: Additive Angular Margin Loss for Deep Face RecognitionArcFace: Additive Angular Margin Loss for Deep Face Recognition
ArcFace: Additive Angular Margin Loss for Deep Face Recognition
 
コンピュータのソフトとハードの境界、そしてIoTへ
コンピュータのソフトとハードの境界、そしてIoTへコンピュータのソフトとハードの境界、そしてIoTへ
コンピュータのソフトとハードの境界、そしてIoTへ
 

Mehr von Junichi Akita

M5Stack用のつよつよ系負荷を駆動するUnit群(スイッチサイエンス年度末大感謝祭 240223)
M5Stack用のつよつよ系負荷を駆動するUnit群(スイッチサイエンス年度末大感謝祭 240223)M5Stack用のつよつよ系負荷を駆動するUnit群(スイッチサイエンス年度末大感謝祭 240223)
M5Stack用のつよつよ系負荷を駆動するUnit群(スイッチサイエンス年度末大感謝祭 240223)Junichi Akita
 
M5Stackで脱出ゲームのギミックを作ってみた件(M5StackユーザーミーティングLT)
M5Stackで脱出ゲームのギミックを作ってみた件(M5StackユーザーミーティングLT)M5Stackで脱出ゲームのギミックを作ってみた件(M5StackユーザーミーティングLT)
M5Stackで脱出ゲームのギミックを作ってみた件(M5StackユーザーミーティングLT)Junichi Akita
 
つくってドヤると楽しい
つくってドヤると楽しいつくってドヤると楽しい
つくってドヤると楽しいJunichi Akita
 
深センで半年間住んでMakeと研究をしてみた
深センで半年間住んでMakeと研究をしてみた深センで半年間住んでMakeと研究をしてみた
深センで半年間住んでMakeと研究をしてみたJunichi Akita
 
日本での電子回路の導入教育の可能性:中国との比較を通して
日本での電子回路の導入教育の可能性:中国との比較を通して日本での電子回路の導入教育の可能性:中国との比較を通して
日本での電子回路の導入教育の可能性:中国との比較を通してJunichi Akita
 
中国と深センでの半導体とRISC-V業界事情
中国と深センでの半導体とRISC-V業界事情中国と深センでの半導体とRISC-V業界事情
中国と深センでの半導体とRISC-V業界事情Junichi Akita
 
タイプライターを改造してキーボードを作ってみた
タイプライターを改造してキーボードを作ってみたタイプライターを改造してキーボードを作ってみた
タイプライターを改造してキーボードを作ってみたJunichi Akita
 
左手サブキーボードを作り続けてみた
左手サブキーボードを作り続けてみた左手サブキーボードを作り続けてみた
左手サブキーボードを作り続けてみたJunichi Akita
 
STM32F互換マイコン(自称を含む)を 軽く解析してみた
STM32F互換マイコン(自称を含む)を軽く解析してみたSTM32F互換マイコン(自称を含む)を軽く解析してみた
STM32F互換マイコン(自称を含む)を 軽く解析してみたJunichi Akita
 
深センで2ヶ月過ごしていろいろ試してみた
深センで2ヶ月過ごしていろいろ試してみた深センで2ヶ月過ごしていろいろ試してみた
深センで2ヶ月過ごしていろいろ試してみたJunichi Akita
 
多様な学生の教材としてしてのプロトタイピング用マイコンボードの可能性
多様な学生の教材としてしてのプロトタイピング用マイコンボードの可能性多様な学生の教材としてしてのプロトタイピング用マイコンボードの可能性
多様な学生の教材としてしてのプロトタイピング用マイコンボードの可能性Junichi Akita
 
自作RISC-VチップでLチカをやってみた
自作RISC-VチップでLチカをやってみた自作RISC-VチップでLチカをやってみた
自作RISC-VチップでLチカをやってみたJunichi Akita
 

Mehr von Junichi Akita (12)

M5Stack用のつよつよ系負荷を駆動するUnit群(スイッチサイエンス年度末大感謝祭 240223)
M5Stack用のつよつよ系負荷を駆動するUnit群(スイッチサイエンス年度末大感謝祭 240223)M5Stack用のつよつよ系負荷を駆動するUnit群(スイッチサイエンス年度末大感謝祭 240223)
M5Stack用のつよつよ系負荷を駆動するUnit群(スイッチサイエンス年度末大感謝祭 240223)
 
M5Stackで脱出ゲームのギミックを作ってみた件(M5StackユーザーミーティングLT)
M5Stackで脱出ゲームのギミックを作ってみた件(M5StackユーザーミーティングLT)M5Stackで脱出ゲームのギミックを作ってみた件(M5StackユーザーミーティングLT)
M5Stackで脱出ゲームのギミックを作ってみた件(M5StackユーザーミーティングLT)
 
つくってドヤると楽しい
つくってドヤると楽しいつくってドヤると楽しい
つくってドヤると楽しい
 
深センで半年間住んでMakeと研究をしてみた
深センで半年間住んでMakeと研究をしてみた深センで半年間住んでMakeと研究をしてみた
深センで半年間住んでMakeと研究をしてみた
 
日本での電子回路の導入教育の可能性:中国との比較を通して
日本での電子回路の導入教育の可能性:中国との比較を通して日本での電子回路の導入教育の可能性:中国との比較を通して
日本での電子回路の導入教育の可能性:中国との比較を通して
 
中国と深センでの半導体とRISC-V業界事情
中国と深センでの半導体とRISC-V業界事情中国と深センでの半導体とRISC-V業界事情
中国と深センでの半導体とRISC-V業界事情
 
タイプライターを改造してキーボードを作ってみた
タイプライターを改造してキーボードを作ってみたタイプライターを改造してキーボードを作ってみた
タイプライターを改造してキーボードを作ってみた
 
左手サブキーボードを作り続けてみた
左手サブキーボードを作り続けてみた左手サブキーボードを作り続けてみた
左手サブキーボードを作り続けてみた
 
STM32F互換マイコン(自称を含む)を 軽く解析してみた
STM32F互換マイコン(自称を含む)を軽く解析してみたSTM32F互換マイコン(自称を含む)を軽く解析してみた
STM32F互換マイコン(自称を含む)を 軽く解析してみた
 
深センで2ヶ月過ごしていろいろ試してみた
深センで2ヶ月過ごしていろいろ試してみた深センで2ヶ月過ごしていろいろ試してみた
深センで2ヶ月過ごしていろいろ試してみた
 
多様な学生の教材としてしてのプロトタイピング用マイコンボードの可能性
多様な学生の教材としてしてのプロトタイピング用マイコンボードの可能性多様な学生の教材としてしてのプロトタイピング用マイコンボードの可能性
多様な学生の教材としてしてのプロトタイピング用マイコンボードの可能性
 
自作RISC-VチップでLチカをやってみた
自作RISC-VチップでLチカをやってみた自作RISC-VチップでLチカをやってみた
自作RISC-VチップでLチカをやってみた
 

「揚げて炙ってわかる コンピュータの仕組み」の舞台裏

  • 1. Interface Device Laboratory, Kanazawa University http://ifdl.jp/ 「揚げて炙ってわかる コンピュータの仕組み」 の舞台裏 秋田純一(金沢大) @akita11 #分解のススメ (第5回)
  • 2. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ 自己紹介(その1) ’70 名古屋生まれ 小4のころから、ハンダの煙で育つ 東京で大学→大学院 D論:低消費電力な4進木読み出しイメージセンサ 金沢大(’98~’00・’04~) 現:理工学域 電子情報通信学類 ※融合学域(専任)に異動予定 公立はこだて未来大(’00~’04) ‘95-’00: 計画策定委員として、 大学の策定に関わる (はこだて未来大のHPより)
  • 3. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ 研究内容(概要) 集積回路 特に(機能つき)イメージセンサ +集積回路を使うデバイス・システム ユーザインタフェース・インタラクティブシステム (人間相手の機械) 集積回路(イメージセンサ)のレイアウト図 (プロッタ出力して目視チェック) 基板設計 研究室(実験室)
  • 4. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ 自己紹介(その2) Maker、ハンダテラピスト 好きな半田はPb:Sn=40:60 好きなプロセスはCMOS0.35μm 好きなICパッケージはDIP8ピン Maker(広い意味での「ものづくり」) Makerイベントの運営などのコミュニティ活動 NT金沢の企画・運営(6月末頃@金沢駅地下広場) 電子工作関連ガジェットの企画・設計・販売 本の著者紹介には 60:40とありますが 訂正お願いします! 本の著者紹介に 書き忘れたので 追記お願いします!
  • 5. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ チップを炙って晒していたら・・・
  • 6. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ 本になってしまった あと、いろんな人が「炙っ て」と古いガジェットをくれ る 教訓:ネタを晒しておくと、 拾ってくれる人がいる 技術評論社の傅さん、 ありがとうございます (実は数年前に別の出版 社に企画を持ち込んでボ ツになった内容)
  • 7. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ 正誤表 40:60 https://suzuri.jp/yamac/4566465/t-shirt/l/applegreen ・ 好きなICパッケージはDIP8ピン ←追加
  • 8. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ 好きなICパッケージはDIP8ピン マイコン/オペアンプ/555で属性が分かれる とも https://www.youtube.com/watch?v=4ZE9st9IJRo https://www.nicovideo.jp/watch/sm25650867
  • 9. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ ※私のオリジナルではありません 基板揚げの先人:ぱ研(現在は閉鎖中)
  • 10. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ ※私のオリジナルではありません https://www.nicovideo.jp/watch/sm7881602 チップ炙りの先人:rerofumiさん
  • 11. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ こんな本です コンピュータが進化して複雑になってきた 「わからない」という不安・あきらめ 高度に進化した科学技術は魔法と区別がつかない 「わかると、より楽しい」 必要ならば中を理解できる 必要ならば改造できる
  • 12. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ Contents(前半) コンピュータを、 ・上から下へ ・下から上へ
  • 13. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ こんなイメージ?:Powers of Ten
  • 14. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ 勝手に親近感 分解という道具をもつ =世界の理解 分解することで 「いじれる」 =脱ブラックボックス
  • 15. Interface Device Laboratory, Kanazawa University http://ifdl.jp/ コンピュータの歴史と階層構造
  • 16. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ コンピュータの階層構造 電子回路→コンピュータの継続性 ハードウエア=回路 ソフトウエア=プログラム 本来はつながっている知識学問体系
  • 17. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ コンピュータの歴史と半導体 (1946) 真空管: 18,000本 消費電力: 140kW サイズ: 30m×3m×1m 演算性能: 5,000加算/s (ENIAC:世界最初のコンピュータ) (2007) 最小加工寸法: 0.065μm(65nm) 素子数: ~50,000,000 消費電力: 100W~数mW サイズ: 10mm×10mm程度 演算性能: 10,000,000,000演算/s (1960)集積回路(IC)の発明
  • 18. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ コンピュータの歴史の2つの側面 DEC VAX(1976) 1MIPS Cray-1 (1978) 100MIPS MIPS:Million Instruction Per Second (1秒間に実行できる命令数) (世界最初のスーパーコンピュータ) 「世界トップの高速化」+「身近なものにも高速化の恩恵」の2つの側面がある 20000MIPS 10MIPS 100MIPS 20MIPS 20000MIPS 109MFLOPS
  • 19. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ コンピュータの「使い方」の変化 国に1台/会社に1台 個人で1台(PC) 一人で何台も 仕事・勉強の道具国・会社のプロジェクト コミュニケーション ・遊びの道具 >1億円 10〜100万円 数万円 身の回りに無数 存在に 気づかない 〜100円 大昔のコンピュータ 一昔前のコンピュータ 今どきのコンピュータ コンピュータの利用場面(アプリケーション)が広がった
  • 20. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ 集積回路(IC)の発明 US Patent No. 2 981 877 (R. Noyce) (1961) US Patent No. 2 138 743 (J. Kilby) (1959) 電子回路を半導体(ケイ素=シリコン)に作り込んだもの ※IC = Integrated Circuit
  • 21. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ 半導体→トランジスタ→集積回路 ref: http://imasaracmosanalog.blog111.fc2.com/category33-1.html A X X=not A A X
  • 22. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ ICの進化の歴史:Mooreの法則 ref: http://www.intel.com/jp/intel/museum/processor/index.htm 傾き:×約1.5/年 年を追って、複雑・高機能な集積回路がつくられるようになった ※G.Moore (インテルの創業者の一人) G.Mooreが1965年に論文[1]で述べる→C.Meadが「法則」と命名→「予測」→「指針(目標)」へ G.E.Moore, "Cramming more components onto integrated circuits," IEEE Solid-State Circuit Newsletter, Vol.11, No.5, pp.33-35, 1965.
  • 23. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ Mooreの法則のカラクリ:スケーリング 集積回路の部品(MOSトランジスタ)を、同じ形状で、 より小さく作ると・・・? 寸法: 1/α 不純物濃度: α 電源電圧: 1/α p-Si S DG n-Sin-Si p-Si S DG n-Sin-Si L R.H.Dennard et al., "Design of ion-implanted MOSFET's with very small physical dimensions," IEEE J.of SSC, Vol.9, No.5, pp.256-268, 1974. MOSトランジスタの断面構造 ※正確には、S−D間の電界強度を一定のまま、サイズを小さくする E = V / d → V→V/α&d→d/α → E = (V/α) / (d/α) = V/d (一定)
  • 24. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ スケーリングの効果 効果:いいことばかり 速度↑ 消費電力↓ 集積度(機能)↑ 技術が進むべき方向性が極めて明確なまれなケース 例:クルマの性能は・・・? p-Si S DG n-Sin-Si p-Si S DG n-Sin-Si L • 素子面積:1/α2 • 素子密度:α2 • 電流I:1/α (←電圧:1/α) • 容量C:1/α (←C=εS/d, S:1/α2, d:1/α) • 抵抗R:α (←R=ρL/S, S:1/α2, L:1/α) • 回路遅延:1/α (←E:一定, S-D間:1/α) • 消費電力:1/α2 (←V:1/α, I:1/α) • 配線遅延時間CR:1 (変わらない) ※MOSトランジスタを 上から見たところ (素子1個の専有面積)
  • 25. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ 般若心経だと・・・ 1um 0.8um 0.5um 0.35um 18ヶ月 18ヶ月 18ヶ月 同じ用紙サイズなら文字数2倍 =機能2倍
  • 26. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ 般若心経だと・・・(その2) 1um 18ヶ月 18ヶ月 0.5um 0.8um 同じ内容なら用紙サイズ1/2 =コスト1/2
  • 27. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ (おまけ) https://booth.pm/ja/items/1247719 https://booth.pm/ja/items/1226529
  • 28. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ Mooreの法則のわかりやすい例 マイコン(ATmega328P/PB)の例 機能:ATmega328P < ATmega328PB(上位互換) 価格:ATmega328P > ATmega328PB(30%安価) 0.6umくらいだと、製造コストはほぼチップ面積 ATmega328P(1.2umルール?) ATmega328PB(0.6umルール?) 詳細:http://ifdl.jp/blog/?p=1197
  • 29. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ MOSトランジスタの微細化の歴史 微細化するほど メリットがある =がんばって微細化 そろそろ「原子」が 見えてきている 「お金がからむと 技術は進む」 ref: 日経BP Tech-On! 2009/03/30の記事 L=20nm(いま) L=5nm(2020年ごろ予定)
  • 30. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ Mooreの法則の意味するところ 誰も損をしないトレードオフのない進化 性能↑ 消費電力↓ コスト↓ 言い換えれば、全ては「ゼロ」に向かう チップ面積、価格 だからこそ、「価値」を探すことが必要 価値のためには面積が必要 Ref: #分解のススメ 4:清水洋治氏(テカナリエ) https://www.youtube.com/watch?v=C1NGYSLoi6Y
  • 31. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ 最近のCPU(※イメージ) Intel Core i7 (2008)トランジスタ(素子)数~10億個 cf: 地球の人口~70億人、中国の人口~13億人
  • 32. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ 最近のソフトとハードの関係 学問体系レベル・実務レベル ソフト=プログラミング→ネットワーク ハード=電子回路→コンピュータアーキテクチャ 学問体系として分かれつつある(←複雑化)
  • 33. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ 似た現象?:化学〜生物学・医学 化学〜生物学・医学の学問体系 脳・知能 生物(多細胞生物) 細胞 タンパク質・DNA 分子・原子 化学と生物学をつなごうとする試み: 分子生物学、生物物理学、・・・ まだ成功はしていない 超えられない壁?
  • 34. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ SW/HWが断絶した世界とは? コンピュータの構成要素(トランジスタ)の「ガン化」 コンピュータ=決定論的システム(動作結果は計画通り) =構成要素の完全動作が前提 微細化→量子効果等による動作の不確実性↑ 「電流が流れないはず」のところで、流れる(ことがある) 現状では、製造技術や設計技術で、なんとか抑え込む そろそろヤバい(回路が思うとおりに動かなくなる) 「ハード屋」の言い分:ソフトウエアでなんとかしてくれ 「ソフト屋」の言い分:ハードウエアでなんとかしてくれ int i = 1; int a = 1, b = 2; c = a + b; このプログラムで、 i=1, c = 3 とならない(かも)
  • 35. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ どれくらいギリギリなのか? S→Dに流れる電流を、Gに加える電圧でON/OFF 不安要因 製造ばらつき(設計通りの形状にならない) 不純物ばらつき(電気特性が設計通りにならない) トンネル効果(OFFにしたつもりが電子が通り抜ける) ref: https://slideplayer.com/slide/7843454/ Si原子(直径0.2nm) ×50 =
  • 36. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ コンピュータの中身が見えなくなる https://hardware.srad.jp/story/18/05/25/0450230/ https://security.srad.jp/story/18/05/08/0919252/ http://www.itmedia.co.jp/news/articles/ 1806/15/news079.html 「正しく動作する」と 信じていたものが・・・
  • 37. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ CPUを「つくる」ことでわかること 仕組みを理解できる 回路→頭脳につながる瞬間 「ヤバそう」ぐらいは わかるかも 少なくとも中で何が起こって いるか、は見えるはず 小規模:手設計でいけそう 大規模:どうやろう?
  • 38. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ CPUをどう「つくる」のか?(1) 論理ICを並べて手配線→4bitくらい さすがに手設計はこれぐらいが限界 HDLで書く→8bitくらい PICくらいなら、慣れればできる 教科書的なRISCアーキテクチャ ATtiny10のアーキテクチャ
  • 39. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ CPUをどう「つくる」のか?(1) IPをもってきてカスタマイズ→16bit以上 HDL等でCPUの「ソース」をもってくる それを「コンパイル」して回路にする 周辺(タイマ等)は自分でカスタマイズできる https://developer.arm.com/products/designstart ARM Design Start Cortex-M0/M3のソース 量産するときに課金 https://opencores.org/ OpenCores.org 各種MPU等のHDLソース SHなどもある RISC-V オープンソース、 階層的なISA(命令セット) 各種実装あり
  • 40. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ RISC-Vを「コンパイル」してみた CMOS 0.6um 3Al 1.8x1.8mm 〜3k gate subset of RV32I
  • 41. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ Contents(後半) 分解の道具立て (基板揚げ、チップ炙り) コンピュータの再構成 道具になる半導体
  • 42. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ 基板を揚げる 要は、基板全体を、ハンダが溶ける温度に 保てば良い
  • 43. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ ※挿入実装と表面実装 図4.3
  • 44. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ 半導体チップはどこにある? 「電気で動くもの」には、だいたい入ってる 普通は黒いパッケージの中にあり、見えない PlayStation2をバラした基板 コレ
  • 45. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ 中身が見える半導体チップ UV-EPROM WS2812 (NeoPixel)
  • 46. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ チップを顕微鏡で見てみる 秋月のWS2812 WorldSemiでもらってきたWS2812
  • 47. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ 見えないチップはどうする?
  • 48. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ 半導体チップの取り出し方 濃硫酸・発煙硝酸に入れて加熱し、 パッケージを溶かす どこのご家庭にもある道具 ・・・ねぇよ!
  • 49. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ 炙る どこのご家庭にもあるBBQバーナー (カセットコンロボンベ使用)
  • 50. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ 崩す どこのご家庭にもある爪楊枝などで
  • 51. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ 拝む どこのご家庭にもあるスマホのマクロ撮影で
  • 52. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ 分析する 詳しくはコチラ→https://note.mu/akita11/ 一番細い配線パターンが見えた! 倍率をあげならが、 特徴ある形状を基準に サイズを計測していく
  • 53. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ 分析(1): ATmega328P/PB(1) ATmega328P:ArduinoUNO等でおなじみ ATmega328PB:↑の上位互換(UARTx2等)、安価
  • 54. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ 分析(1): ATmega328P/PB(2) ATmega328P メタル間隔:1.8um ATmega328PB メタル間隔:0.6um ※0.6umプロセスあたり までは5V動作OK 詳細は→https://note.com/akita11/
  • 55. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ 分析(2): PL2303のニセモノ(Rev.C) 純正(たぶん) 安っぽいマーキング
  • 56. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ 分析(2): PL2303のニセモノ(Rev.A) 45円@AliExp マーク消し Aitendoで購入
  • 57. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ 分析(2): PL2303のニセモノ(沼) PL2303のニセモノ各種 @tomonさん提供 実はPL2303は、 FT232のピン互換・安価品 実はUSBシリアル変換ICは ぜんぶマイコンなんじゃ?説(@Ohkiさん)
  • 58. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ 実はUSBシリアル変換ICは ぜんぶマイコンなんじゃ?説(by @Ohkiさん)
  • 59. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ より詳しく知りたい方は・・・ 紹介記事→ https://medium.com/分解のススメ/techanalye-983589cb499d 購読申込→https://forms.gle/HWgLqhiG7Tr2YJLk6
  • 60. Interface Device Laboratory, Kanazawa University http://ifdl.jp/ コンピュータの再構成
  • 61. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ コンピュータの動作と論理回路 RISC-Vを題材に、命令セットと制御の流れを https://uzuarai.booth.pm/items/1572579
  • 62. Interface Device Laboratory, Kanazawa University http://ifdl.jp/ 道具になる半導体
  • 63. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ 「マイコン」という概念 マイコン=Micro-controller / Micro-computer 技術的には:枯れた技術の固まり RISC, Flashメモリ, ... ハーバードアーキテクチャ, … 使い方的には・・・? 「コンピュータ」が安く小さくなることの意義 単なる「安くて小さいコンピュータ」ではない パラダイム(常識・概念)の転換(の可能性) (Atmel ATtiny10データシートより) (日立/Renesas H8/3048F)
  • 64. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ コンピュータが「頭脳」から「部品」に 出典:ARM 機器の頭脳 関節ごとに小さい脳(神経節) コンピュータが、システムの「主役」から「構成要素(部品)」になった ※基本的には「コンピュータ」だが、小型で安価
  • 65. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ 「Lチカ」から考える半導体 =「LEDチカチカ」(LED Blink) 「LEDを点滅させる」こと プログラミングにおける”Hello World”的なもの (まず始めに試すやつ)
  • 66. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ ※ウソです 広辞林(第6版)より
  • 67. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ 日本工業標準調査会(JISC) JIS規格一覧 ※ウソです
  • 68. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ PCで「Lチカ」・・・? while(1){ a = 1; sleep(1); a = 0; sleep(1); } 「可能」ではあるが、「現実的」ではない
  • 69. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ マイコン使用 部品点数=1 コスト:100円 発振回路(555) 部品点数=4 コスト:150円 「Lチカ」のパラダイムシフト コスト面:マイコン○(「もったいなくない」) 機能面:マイコン○(多機能・仕様変更も容易) while(1){ a = 1; sleep(1); a = 0; sleep(1); } ※さすがにPCではちょっと・・・ Mooreの法則の結果、コンピュータが「部品」になった例 昔のLチカ 今どきのLチカ ※マイコン=Micro Controller(小さなコンピュータ)
  • 70. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ 価格が起こしたパラダイムシフト シリアル制御フルカラーLED“NeoPixel” 電源+1本のシリアル制御線で複数制御 超安価 (~3円/pcs) 普通のLEDより安い LEDディスプレイなど大量に使われるようになった 制御チップは1umルール程度(かなり安い) Ref:https://news.nicovideo.jp/watch/nw4240213
  • 71. Interface Device Laboratory, Kanazawa University http://ifdl.jp/ 半導体を「道具」として持つこと
  • 72. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ 集積回路(IC)は「道具」か?:調査 https://www.youtube.com/watch?v=A188CYfuKQ0 http://www.nicovideo.jp/watch/sm23660093 CMOS 0.18um 5Al 2.5mm x 2.5mm RingOSC x 1001 T-FF (Div) (※LSI=集積回路のこと)
  • 73. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ Lチカ動画:ニコ動でのコメント  こっから?  ニコ技界のTOKIO  ゲートの無駄遣い  ここから!!?  ひでえ、勿体ない使い方wwwww  マジかよ。レジストレベルの設計とか ガチすぎる。  無駄遣い過ぎるだろw  贅沢というかなんというか  え?まじでここからかよ」wwww」」  IC版FusionPCB的なところが現れれば・・・  (FPGAでは)いかんのか?  俺はFPGAで我慢することにする  いや、そこまでは必要ないです  量産品すらFPGA使う時代に専用LSI・・・  アマチュアはFPGAで良いんだよなぁ・・・w 「集積回路=すごいことをやるためのもの」という意識
  • 74. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ なんでこんなアホなことを? LSIは「道具」になりきっているか? オレLSI 「作る?ちょっとそこまでは・・・」「使うけど・・・」 他の技術はどうなってきたか? コンピュータ:大型機→PC マイコン:H8→Arduino プリント基板:業務用→アマチュア 3Dプリンタ:業務用→フィギュア 動画編集:映画→YouTube/ニコ動
  • 75. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ ムーアの法則がもたらしたもの(2) LSI設計・製造コストの高騰 シャトル製造サービス〜$1k 製造初期コスト(マスク)〜$1M 設計ツール 〜$1M 秘密保持契約(NDA; Non Disclosure Agreement) : Priceless 製造工場 〜$1G cf:プリント基板製造($10~)、Arduino($10~) cf: 設計CAD&コンパイラ(IDE)(Free~) 「専用LSIつくってLチカ」ってもったいない&無駄遣いすぎる
  • 76. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ 「道具」としての集積回路 「ハード」=電子回路、プリント基板あたり 「集積回路(半導体チップ)」までは、なかなか どうしても「今あるもの・使えるもの」を使う カメラ、Kinect、マイコン、FPGA・・・ 新技術で、一気にパラダイムが変わることがある 「集積回路をつくれる」という道具 =「いまできること」という発想の縛りから開放 Depth画像 ※昔は「可能だが高価」 →Kinect後は「誰でも使える」 →ユーザインタフェース界の革命
  • 77. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ LチカLSI ver2(センサ) タッチセンサ 光センサ ※北九州学術研究都市 共同研究開発センターの半導体試作施設において、 (一財)ファジィシステム研究所の協力の下、他大学学生のLSI製造演習として 試作されました CMOS 2um 2Al 3.2mm x 3.2mm https://www.youtube.com/watch?v=NN1wNf66vXw http://www.nicovideo.jp/watch/sm24280073 CAD:フリーウエア(Inkscape) 製造:北九州の時間貸しクリーンルーム
  • 78. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ センサを「つくる」 基本、物理法則に沿っていれば 「何でもできる」 微細構造、界面、・・・ ADCなどの信号処理回路も集積OK 逆に、自由度が高すぎて、難しい 電子回路 量子力学 電磁気学 ・・・ ref: https://tech.nikkeibp.co.jp/dm/article/WORD/20090415/168824/
  • 79. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ 「自作Cortex-M0でLチカ」:やってみた 0: 23a0 movs r3, #160 ; 0xa0 2: 05db lsls r3, r3, #23 4: 4c0b ldr r4, [pc, #44] 6: 4f0c ldr r7, [pc, #48] 8: 2201 movs r2, #1 a: 601a str r2, [r3, #0] c: 2500 movs r5, #0 e: 6025 str r5, [r4, #0] 10: 2600 movs r6, #0 12: 3601 adds r6, #1 14: 42be cmp r6, r7 16: d1fc bne.n 12 <main+0x12> 18: 3501 adds r5, #1 1a: 2dff cmp r5, #255 ; 0xff 1c: d1f7 bne.n e <main+0xe> 1e: 2200 movs r2, #0 20: 601a str r2, [r3, #0] 22: 25ff movs r5, #255 ; 0xff 24: 2600 movs r6, #0 26: 3601 adds r6, #1 28: 42be cmp r6, r7 2a: d1fc bne.n 26 <main+0x26> 2c: 3d01 subs r5, #1 2e: 2d00 cmp r5, #0 30: d1f8 bne.n 24 <main+0x24> 32: e7e9 b.n 8 <main+0x8> 34: 50000004 38: 0000270f #define GPIO 0x50000000 #define PWMDUTY 0x50000001 #define WAIT 10000 // 3,000,000=0.3s / 256 -> 10,000 void main() { volatile unsigned int w; volatile unsigned int d; while(1){ *(volatile unsigned int *)GPIO = 0x0001; for (d = 0; d < 256; d++){ *(volatile unsigned int *)PWMDUTY = d; for (w = 0; w < WAIT; w++); } *(volatile unsigned int *)GPIO = 0x0000; for (d = 255; d >= 0; d--){ *(volatile unsigned int *)PWMDUTY = d; for (w = 0; w < WAIT; w++); } } } arm-gcc/gas VerilogHDL module imem(clk, addr, data2); input clk; input [31:0] addr; output [31:0] data2; reg [31:0] data, data2; // 0x00000000 - 0x1fffffff : code (0x00000000-0x000000c0: int.vec.) // code memory: little-endian (LSB=1st byte / MSB=2nd byte) wire [31:0] addr2; assign addr2 = {addr[31:2], 2'b00}; always @(addr2) begin case (addr2) 32'h00000000 : data <= 32'h0020000; // insital SP 32'h00000004 : data <= 32'h0000101; // reset (bit[0]=T) 32'h00000100 : data <= {16'h05db,16'h23a0}; 32'h00000104 : data <= {16'h4f0d,16'h4c0c}; 32'h00000108 : data <= {16'h601a,16'h2201}; 32'h0000010c : data <= {16'h6025,16'h2500}; 32'h00000110 : data <= {16'h3601,16'h2600}; 32'h00000114 : data <= {16'hd1fc,16'h42be}; 32'h00000118 : data <= {16'h2dff,16'h3501}; 32'h0000011c : data <= {16'h2200,16'hd1f7}; 32'h00000120 : data <= {16'h25ff,16'h601a}; 32'h00000124 : data <= {16'h2600,16'h6025}; 32'h00000128 : data <= {16'h42be,16'h3601}; 32'h0000012c : data <= {16'h3d01,16'hd1fc}; 32'h00000130 : data <= {16'hd1f7,16'h2d00}; 32'h00000134 : data <= {16'h0000,16'he7e8}; 32'h00000138 : data <= 32'h50000004; 32'h0000013c : data <= 32'd1999; default: data <= 32'h0; endcase end always @(posedge clk) begin data2 <= data; end endmodule 「Lチカ」&「Lほわ」 Thumb命令 機械語の プログラム
  • 80. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ 「Lチカ専用Cortex-M0」:設計してみた CMOS 0.18um 5Al 0.55mm x 0.65mm ※このチップの設計は、東京大学大規模集積システム設計教育研究センターを通し、 日本ケイデンス株式会社、シノプシス株式会社研究センターの協力で行われたものです。 ※このチップの設計で使用したライブラリは、京都大学情報学研究科 田丸・小野寺研究室の 成果によるもので、京都工芸繊維大学 小林和淑教授によりリリースされたものです。 ※このチップの試作は、東京大学大規模集積システム設計教育研究センターを通し、 ローム(株)および凸版印刷(株)の協力で行われたものです。 Synopsys Design Compiler & IC Compiler ※クロック周波数=10MHz
  • 81. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ オレLSI:アナログLSI アナログ回路の「部品」をつないで設計 CMOS 0.18um 1P5M CMPx2+DFF+DisChgTr 本家とピン互換
  • 82. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ オレLSI:AI向けも AI/深層学習向けのプロセッサ 従来型の「ノイマン型コンピュータ」では苦手 いわゆるASIC(特定用途向けIC)だが、 少量多品種向け GoogleのTPU (Tensorflow Processing Unit)の例 ref: https://news.mynavi.jp/article/20170411-tpu/2
  • 83. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ オレLSI:IoT向けも IoTは、本質的に「少量多品種」 使う場面ごとに、必要な機能・性能が異なる 情報処理のやり方も多様(端末側?サーバ?) 環境発電(太陽電池、振動発電など)など、 超低消費電力が必要な場面も多い センサ プロセッサ 通信 記録 電源
  • 84. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ 集積回路を「つくる」ためのハードル 設計CAD 市販の業務用CAD: 高すぎ、高機能すぎ 製造方法 高すぎ、時間かかりすぎ(1000万円・半年) NDA(設計ルールなどのアクセス制限)が厳しすぎ ユーザ・コミュニティ 参入障壁:現状は専門家ばかり “How”の専門家は多いが、”Why/What”は皆無 いずれも、なんとかなりそう?
  • 85. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ オレLSIをつくってみたい:実践 情報収集・整理 探せば、ないことはない 仲間さがし やや古めのテクノロジで NDAフリー &オープンソース GitHubで回路をシェア http://j.mp/make_lsi
  • 86. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ ・・・と思っていたら NDA不要・オープンソースなチップ設計環境 やや議論が発散気味な印象だが、猛スピードで整備中 予定では11月に相乗り試作 「なんてNDAなしでできたんですかね?」 →「だって130nmなんて枯れた技術だし、 隠すより、エコシステム作ったほうがいいじゃん?」
  • 87. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ チップを「つくる」 (イメージ:近い将来) 設計する(GDS形式) データをupload チップが届く cf: プリント基板 設計する(gerber形式) Webからデータをupload 基板が届く
  • 88. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ 1um?0.5in?いえいえ、けっこう使えます 1[um]/3Alプロセス・0.5inウエハに Cortex-M0コアが4ショットは入る カスタムなペリフェラル・アナログ・センサ・MEMS の混載も(これが数万円&1週間@1個から) ※0.18[um]/3Alでの配置配線結果の レイアウトデータ(GDS)を1/0.18=28倍に 拡大して作成
  • 89. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ LSIが道具になるとは・・・ 『3Dプリンタは、私たちに「何をつくりたいの か」を問いかけているのです。』 あなたなら、何を作りますか? いまのうちから、考えておいても 損はないはず。
  • 90. 2020/8/19 Interface Device Laboratory, Kanazawa University http://ifdl.jp/ おまけ https://akita111.booth.pm/items/838270