Interface Device Laboratory, Kanazawa University http://ifdl.jp/
コンピュータのソフトとハードの
境界、そしてIoTへ
秋田純一
(金沢大学)
2018/8/26 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
自己紹介
 1970名古屋生まれ
 東京で大学→大学院
 金沢大(’98~’00・’04~)
 公立はこだて未来大(’00~’04)
 ’95〜’00:はこだて未来大 計画策定委員(翼セミナーOBの縁)
 本業:集積回路、特に(機能つき)イメージセンサ
 +集積回路を使うデバイス・システム
 ユーザインタフェース・インタラクティブシステム(人間相手の機械)
集積回路(イメージセンサ)のレイアウト図
(プロッタ出力して目視チェック) 基板設計
研究室(実験室
2018/8/26 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
自己紹介(数理の翼関連)
8回(夏季):高2
(当時)数学かぶれ(カオスとフラクタル)
セミナー中に唯一とったノート(1行だけ)
「Eularの式:eiθ=cosθ+i sinθ」(塩田先生の講義)
周りに仲間少ない→全国にいることを知る
地元の大学に行こう→仲間の多い東京を目指す
理学部化学科志望→電子工学科へ(三つ子の魂)
12回:スタッフ
大学サークル=セミナー同窓会(湧源クラブ)
14,17,18,19,22,25,28,31回:OB講師など
2018/8/26 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
自己紹介(副業)
Maker、ハンダテラピスト
好きな半田はPb:Sn=40:60
2018/8/26 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
今日の概要と流れ
チップ(半導体チップ)
=集積回路(Integrated Circuits; IC)
LSI(大規模集積回路; Large Scale Integration)
コンピュータの歴史と半導体
SWとHWの分離の時代へ
IoT時代の「技術」との付き合い方
半導体チップを「道具」としてもつこと
2018/8/26 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)の発明
2018/8/26 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
2018/8/26 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
コンピュータの「使い方」の変化
国に1台/会社に1台 個人で1台(PC) 一人で何台も
仕事・勉強の道具国・会社のプロジェクト
コミュニケーション
・遊びの道具
>1億円 10〜100万円 数万円
身の回りに無数
存在に
気づかない
〜100円
大昔のコンピュータ 一昔前のコンピュータ 今どきのコンピュータ
コンピュータの利用場面(アプリケーション)が広がった
2018/8/26 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)
電子回路を半導体(ケイ素=シリコン)に作り込んだもの
2018/8/26 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
半導体→トランジスタ→論理回路
ref: http://imasaracmosanalog.blog111.fc2.com/category33-1.html
A X
X=not A
A X
2018/8/26 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.
2018/8/26 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 (一定)
2018/8/26 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個の専有面積)
2018/8/26 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
MOSトランジスタの微細化の歴史
微細化するほど
メリットがある
=がんばって微細化
そろそろ「原子」が
見えてきている
「お金がからむと
技術は進む」
ref: 日経BP Tech-On! 2009/03/30の記事
L=20nm(いま)
L=5nm(2020年ごろ予定)
2018/8/26 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
コンピュータのハードからソフトへ
電子回路→コンピュータの継続性
ハードウエア=回路
ソフトウエア=プログラム
本来はつながっている知識学問体系
2018/8/26 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
最近のCPU(※イメージ)
Intel Core i7 (2008)トランジスタ(素子)数~10億個
cf: 地球の人口~70億人、中国の人口~13億人
2018/8/26 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
最近のソフトとハードの関係
学問体系レベル・実務レベル
ソフト=プログラミング→ネットワーク
ハード=電子回路→コンピュータアーキテクチャ
学問体系として分かれつつある(←複雑化)
2018/8/26 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
似た現象?:化学〜生物学・医学
化学〜生物学・医学の学問体系
脳・知能
生物(多細胞生物)
細胞
タンパク質・DNA
分子・原子
化学と生物学をつなごうとする試み:
分子生物学、生物物理学、・・・
まだ成功はしていない
超えられない壁?
2018/8/26 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 とならない(かも)
2018/8/26 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
どれくらいギリギリなのか?
S→Dに流れる電流を、Gに加える電圧でON/OFF
不安要因
製造ばらつき(設計通りの形状にならない)
不純物ばらつき(電気特性が設計通りにならない)
トンネル効果(OFFにしたつもりが電子が通り抜ける)
ref: https://slideplayer.com/slide/7843454/
Si原子(直径0.2nm)
×50
=
2018/8/26 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
「正しく動作する」と
信じていたものが・・・
2018/8/26 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
CPUを「つくる」ことでわかること
仕組みを理解できる
回路→頭脳につながる瞬間
「ヤバそう」ぐらいは
わかるかも
少なくとも中で何が起こって
いるか、は見えるはず
小規模:手設計でいけそう
大規模:どうやろう?
2018/8/26 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
CPUをどう「つくる」のか?(1)
論理ICを並べて手配線→4bitくらい
さすがに手設計はこれぐらいが限界
HDLで書く→8bitくらい
PICくらいなら、慣れればできる
教科書的なRISCアーキテクチャ
ATtiny10のアーキテクチャ
2018/8/26 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などもある
2018/8/26 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
CPUの「コンパイル」
ソース
(HDL)
ライブラリ
回路(IC)
論理合成
配置配線
FPGA
ASIC(シリコン)
ターゲット(回路)にあわせたライブラリ
論理ゲート、演算器等(マクロ)
※プログラムのコンパイル・リンクとだいたい同じ
Interface Device Laboratory, Kanazawa University http://ifdl.jp/
IoT時代の
「技術」との付き合い方
2018/8/26 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
「マイコン」という概念
マイコン=Micro-controller
/ Micro-computer
技術的には:枯れた技術の固まり
RISC, Flashメモリ, ...
ハーバードアーキテクチャ, …
使い方的には・・・?
「コンピュータ」が安く小さくなることの意義
単なる「安くて小さいコンピュータ」ではない
パラダイム(常識・概念)の転換(の可能性)
(Atmel ATtiny10データシートより)
(日立/Renesas H8/3048F)
2018/8/26 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
コンピュータが「頭脳」から「部品」に
出典:ARM
機器の頭脳
関節ごとに小さい脳(神経節)
コンピュータが、システムの「主役」から「構成要素(部品)」になった
※基本的には「コンピュータ」だが、小型で安価
2018/8/26 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
「Lチカ」から考える半導体
=「LEDチカチカ」(LED Blink)
「LEDを点滅させる」こと
プログラミングにおける”Hello World”的なもの
(まず始めに試すやつ)
2018/8/26 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
※ウソです
広辞林(第6版)より
2018/8/26 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
日本工業標準調査会(JISC)
JIS規格一覧
※ウソです
2018/8/26 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
PCで「Lチカ」・・・?
while(1){
a = 1;
sleep(1);
a = 0;
sleep(1);
}
「可能」ではあるが、「現実的」ではない
2018/8/26 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(小さなコンピュータ)
2018/8/26 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
IT/ICT業界とハード業界が近づいた
 大企業でなくてもハードを製造販売できるようになった
 製造技術が身近になった(電子回路、3Dプリンタ、・・・)
 部品メーカ、設計者、ユーザの「生態系(Ecosystem)」
 ソフト+ハード+サービスで「世の中変える」
 多様なニーズ、無視できないロングテール(ニッチ)
 従来型製造業の補完(置換ではない)
 クラウド・ファンディング=市場調査+資金調達
(売ってみないとヒットするかはわからない)
Maker Faire Tokyo 2015
(多数の「作ってみた」)
(C.アンダーソン「ロングテール」,早川書房 (2009))
全体の40%
2018/8/26 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
(おまけ)今年のMakerFaireTokyoで
持ってきているので、
あとでやってみましょう
2018/8/26 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
(おまけのおまけ)
コイル:400T
磁石:ダイソーのNd磁石
固定具等:3Dプリンタで成形
3Vppくらいはでそう
2018/8/26 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
IT/ICT業界の現状:深圳の華強北
37
山寨(ShanZhai)の例(“iPhone nano”)
※FakeCopyではなく、プロダクトの
進化系。これが2週間で量産される
無限に続くパーツ屋
“Used Mobile Phone Shop”の実体
パーツに分解
(BGAも)
路上で解体
店頭でリペア
新製品の試作に流用
ShenZhen HuaQiangBei
基板製造
+
部品(サプライチェーン)
+
起業(ハードウエアスタートアップ)
+
資本(VC/アクセラレータ)
深圳の生態系
謎の起業・新製品が続々(ときどきアタる)
世界中から頭脳と資金が集まり、
イノベーションを生み出している
「ハードウエアのシリコンバレー」とも
2018/8/26 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
ハードとソフトが混ざってきたのは?
ハード技術が「道具」になったから
開発/発明される
お店で買えるようになる
使い方が知られるようになる
みんなが使うようになる
それが「道具」となって、次のステップへ
プロのみ マニア(ハイレベルアマチュア)向け だれでも
プロ(詳しい人)しか使えない
アマ(詳しくない人)でも使える
2018/8/26 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
技術が生まれて「道具」になるまで
エリンギの例
1993年に日本へ
2003年ごろから一般化
↑10年かかって「道具」に
料理番組、調理例・・・
農林水産省「平成20年度 農林水産物貿易円滑化推進事業
台湾・香港・シンガポール・タイにおける品目別市場実態調査
(生鮮きのこ)報告書」(林野庁経営課特用林産対策室 )より
2018/8/26 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
IoT時代のコンピュータ
IoT=色々なモノがインターネットにつながる
ハードウエア=センサ、装置
ソフトウエア=情報処理(AI)、ネットワーク経路
サービス=何ができるか?(※一番だいじ)
「何ができるか(嬉しいか)」が一番だいじ
そのために、ソフト・ハードも使える
2018/8/26 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
IT/ICT/IoTの本質:「サービス」
(例)スマホなくして困りますか?
何に困りますか?
ハードウエア?・・・スマホ本体など
ソフトウエア?・・・アプリなど
サービス?・・・LINEのIDなど
ソフトもハードも代わりがある
サービスには代わりがない
2018/8/26 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
ソフト業界?ハード業界?
ソフト業界
IT業界
SE/SI
プログラマ
アプリ
Webサービス
ハード業界
ものづくり(←死語)
景気悪そう?
2018/8/26 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
ソフト業界とハード業界の境界?
だいぶあいまい
だいたい両方やってる
サービスだいじ
「モノを売っておしまい」ではない
2018/8/26 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
IoT時代に「技術」とどう付き合うか
やろうと思えば、「自分でできることが」
圧倒的に増えた
技術の「道具化」、ハードウエアスタートアップ、
エコシステム
「誰かがやってくれる」のを待つのは、もったいない
※「ちゃんとやる」には専門家が必要なのも事実
「おばあちゃんセンシング」
畑の状況確認など、「センシング欲」は無限大
×おばあちゃんが「技術を買う」
◎おばあちゃん自身が「技術」を使う
Interface Device Laboratory, Kanazawa University http://ifdl.jp/
半導体を「道具」として持つこと
2018/8/26 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=集積回路のこと)
2018/8/26 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
Lチカ動画:ニコ動でのコメント
 こっから?
 ニコ技界のTOKIO
 ゲートの無駄遣い
 ここから!!?
 ひでえ、勿体ない使い方wwwww
 マジかよ。レジストレベルの設計とか
ガチすぎる。
 無駄遣い過ぎるだろw
 贅沢というかなんというか
 え?まじでここからかよ」wwww」」
 IC版FusionPCB的なところが現れれば・・・
 (FPGAでは)いかんのか?
 俺はFPGAで我慢することにする
 いや、そこまでは必要ないです
 量産品すらFPGA使う時代に専用LSI・・・
 アマチュアはFPGAで良いんだよなぁ・・・w
「集積回路=すごいことをやるためのもの」という意識
2018/8/26 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
なんでこんなアホなことを?
LSIは「道具」になりきっているか?
オレLSI
「作る?ちょっとそこまでは・・・」「使うけど・・・」
他の技術はどうなってきたか?
コンピュータ:大型機→PC
マイコン:H8→Arduino
プリント基板:業務用→アマチュア
3Dプリンタ:業務用→フィギュア
動画編集:映画→YouTube/ニコ動
2018/8/26 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チカ」ってもったいない&無駄遣いすぎる
2018/8/26 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
「道具」としての集積回路
「ハード」=電子回路、プリント基板あたり
「集積回路(半導体チップ)」までは、なかなか
どうしても「今あるもの・使えるもの」を使う
カメラ、Kinect、マイコン、FPGA・・・
新技術で、一気にパラダイムが変わることがある
「集積回路をつくれる」という道具
=「いまできること」という発想の縛りから開放
Depth画像
※昔は「可能だが高価」
→Kinect後は「誰でも使える」
→ユーザインタフェース界の革命
2018/8/26 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)
製造:北九州の時間貸しクリーンルーム
2018/8/26 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
センサを「つくる」
基本、物理法則に沿っていれば
「何でもできる」
微細構造、界面、・・・
ADCなどの信号処理回路も集積OK
逆に、自由度が高すぎて、難しい
電子回路
量子力学
電磁気学
・・・
ref: https://tech.nikkeibp.co.jp/dm/article/WORD/20090415/168824/
2018/8/26 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
「オレMCU」はどうか?
ARM Cortex-M0/M3 DesignStartプログラム
誰でもOK、評価目的でCortex-M0/M3のHDLソース
2018/8/26 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命令
機械語の
プログラム
2018/8/26 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
2018/8/26 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
オレLSI:アナログLSI
アナログ回路の「部品」をつないで設計
CMOS 0.18um
1P5M
CMPx2+DFF+DisChgTr
本家とピン互換
2018/8/26 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
2018/8/26 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
オレLSI:IoT向けも
IoTは、本質的に「少量多品種」
使う場面ごとに、必要な機能・性能が異なる
情報処理のやり方も多様(端末側?サーバ?)
環境発電(太陽電池、振動発電など)など、
超低消費電力が必要な場面も多い
センサ プロセッサ 通信
記録 電源
2018/8/26 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
集積回路を「つくる」ためのハードル
設計CAD
市販の業務用CAD: 高すぎ、高機能すぎ
製造方法
高すぎ、時間かかりすぎ(1000万円・半年)
NDA(設計ルールなどのアクセス制限)が厳しすぎ
ユーザ・コミュニティ
参入障壁:現状は専門家ばかり
“How”の専門家は多いが、”Why/What”は皆無
いずれも、なんとかなりそう?
2018/8/26 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
オレLSIをつくってみたい:実践
情報収集・整理
探せば、ないことはない
仲間さがし
http://j.mp/make_lsi
2018/8/26 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
MakeLSI: -CADツール
探せばいろいろある(フリーウエア)
レイアウトツール:Wgex / Glade
回路シミュレーション:LTspice / Spice3
論理合成・配置配線: Alliance/Qflow
プロジェクト内の標準ツール
使用法・設計法のノウハウの
共有・蓄積
IPの分散開発・蓄積
※特殊なツールは、あまり
いいことがない(ツールが目的ではないので、
長いものには巻かれるべき)
2018/8/26 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
MakeLSI: ー設計ルール
OpenRule1um
0.5umグリッド・NDA(秘密保持契約)フリー
フェニテック0.6um等でチップ製造可能
https://github.com/MakeLSI/OpenRule1um
標準ロジックゲートのスタンダードセル
2018/8/26 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
MakeLSI: -データの蓄積・再利用
GitHub上でデータを共有=再利用OK
NDA-Free設計ルール= NDA-Free IP
迅速なIP開発
 共通設計環境・プロセス
 多くの参加者による開発
 品質が低い場合もある(バグ、エラー)
 品質も参加者により改善される?
Cf. OSS (Open Source Software; Linux, etc.)
 品質はコミュニティメンバにより迅速に改善
 コミュニティメンバの開発・改良への熱意
 オープンな枠組み(ソースコード、ライセンス)が必要
2018/8/26 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
MakeLSI: -チップ製造(近い将来)
ミニマルファブ
0.5インチウエハ・局所クリーン化・DLP露光
小ロット・短TAT(製造期間)のLSI製造
加工寸法:1umくらい
ムーアの法則→非先端プロセスでも十分な性能
設計ルールのNDA→λルールでオープンソース化?
5umルールでも十分(な人も多い)
価格:数万円(個人でもなんとか)
あと数年で実用化?
http://unit.aist.go.jp/neri/mini-sys/fabsystem/minimalfab.html
2018/8/26 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
チップを「つくる」
(イメージ:近い将来)
設計する(GDS形式)
データをupload
チップが届く
cf: プリント基板
設計する(gerber形式)
Webからデータをupload
基板が届く
2018/8/26 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倍に
拡大して作成
2018/8/26 Interface Device Laboratory, Kanazawa University http://ifdl.jp/
LSIが道具になるとは・・・
『3Dプリンタは、私たちに「何をつくりたいの
か」を問いかけているのです。』
あなたなら、何を作りますか?
いまのうちから、考えておいても
損はないはず。

コンピュータのソフトとハードの境界、そしてIoTへ

  • 1.
    Interface Device Laboratory,Kanazawa University http://ifdl.jp/ コンピュータのソフトとハードの 境界、そしてIoTへ 秋田純一 (金沢大学)
  • 2.
    2018/8/26 Interface DeviceLaboratory, Kanazawa University http://ifdl.jp/ 自己紹介  1970名古屋生まれ  東京で大学→大学院  金沢大(’98~’00・’04~)  公立はこだて未来大(’00~’04)  ’95〜’00:はこだて未来大 計画策定委員(翼セミナーOBの縁)  本業:集積回路、特に(機能つき)イメージセンサ  +集積回路を使うデバイス・システム  ユーザインタフェース・インタラクティブシステム(人間相手の機械) 集積回路(イメージセンサ)のレイアウト図 (プロッタ出力して目視チェック) 基板設計 研究室(実験室
  • 3.
    2018/8/26 Interface DeviceLaboratory, Kanazawa University http://ifdl.jp/ 自己紹介(数理の翼関連) 8回(夏季):高2 (当時)数学かぶれ(カオスとフラクタル) セミナー中に唯一とったノート(1行だけ) 「Eularの式:eiθ=cosθ+i sinθ」(塩田先生の講義) 周りに仲間少ない→全国にいることを知る 地元の大学に行こう→仲間の多い東京を目指す 理学部化学科志望→電子工学科へ(三つ子の魂) 12回:スタッフ 大学サークル=セミナー同窓会(湧源クラブ) 14,17,18,19,22,25,28,31回:OB講師など
  • 4.
    2018/8/26 Interface DeviceLaboratory, Kanazawa University http://ifdl.jp/ 自己紹介(副業) Maker、ハンダテラピスト 好きな半田はPb:Sn=40:60
  • 5.
    2018/8/26 Interface DeviceLaboratory, Kanazawa University http://ifdl.jp/ 今日の概要と流れ チップ(半導体チップ) =集積回路(Integrated Circuits; IC) LSI(大規模集積回路; Large Scale Integration) コンピュータの歴史と半導体 SWとHWの分離の時代へ IoT時代の「技術」との付き合い方 半導体チップを「道具」としてもつこと
  • 6.
    2018/8/26 Interface DeviceLaboratory, 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)の発明
  • 7.
    2018/8/26 Interface DeviceLaboratory, 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
  • 8.
    2018/8/26 Interface DeviceLaboratory, Kanazawa University http://ifdl.jp/ コンピュータの「使い方」の変化 国に1台/会社に1台 個人で1台(PC) 一人で何台も 仕事・勉強の道具国・会社のプロジェクト コミュニケーション ・遊びの道具 >1億円 10〜100万円 数万円 身の回りに無数 存在に 気づかない 〜100円 大昔のコンピュータ 一昔前のコンピュータ 今どきのコンピュータ コンピュータの利用場面(アプリケーション)が広がった
  • 9.
    2018/8/26 Interface DeviceLaboratory, Kanazawa University http://ifdl.jp/ 集積回路(IC)の発明 US Patent No. 2 981 877 (R. Noyce) (1961) US Patent No. 2 138 743 (J. Kilby) (1959) 電子回路を半導体(ケイ素=シリコン)に作り込んだもの
  • 10.
    2018/8/26 Interface DeviceLaboratory, Kanazawa University http://ifdl.jp/ 半導体→トランジスタ→論理回路 ref: http://imasaracmosanalog.blog111.fc2.com/category33-1.html A X X=not A A X
  • 11.
    2018/8/26 Interface DeviceLaboratory, 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.
  • 12.
    2018/8/26 Interface DeviceLaboratory, 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 (一定)
  • 13.
    2018/8/26 Interface DeviceLaboratory, 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個の専有面積)
  • 14.
    2018/8/26 Interface DeviceLaboratory, Kanazawa University http://ifdl.jp/ MOSトランジスタの微細化の歴史 微細化するほど メリットがある =がんばって微細化 そろそろ「原子」が 見えてきている 「お金がからむと 技術は進む」 ref: 日経BP Tech-On! 2009/03/30の記事 L=20nm(いま) L=5nm(2020年ごろ予定)
  • 15.
    2018/8/26 Interface DeviceLaboratory, Kanazawa University http://ifdl.jp/ コンピュータのハードからソフトへ 電子回路→コンピュータの継続性 ハードウエア=回路 ソフトウエア=プログラム 本来はつながっている知識学問体系
  • 16.
    2018/8/26 Interface DeviceLaboratory, Kanazawa University http://ifdl.jp/ 最近のCPU(※イメージ) Intel Core i7 (2008)トランジスタ(素子)数~10億個 cf: 地球の人口~70億人、中国の人口~13億人
  • 17.
    2018/8/26 Interface DeviceLaboratory, Kanazawa University http://ifdl.jp/ 最近のソフトとハードの関係 学問体系レベル・実務レベル ソフト=プログラミング→ネットワーク ハード=電子回路→コンピュータアーキテクチャ 学問体系として分かれつつある(←複雑化)
  • 18.
    2018/8/26 Interface DeviceLaboratory, Kanazawa University http://ifdl.jp/ 似た現象?:化学〜生物学・医学 化学〜生物学・医学の学問体系 脳・知能 生物(多細胞生物) 細胞 タンパク質・DNA 分子・原子 化学と生物学をつなごうとする試み: 分子生物学、生物物理学、・・・ まだ成功はしていない 超えられない壁?
  • 19.
    2018/8/26 Interface DeviceLaboratory, Kanazawa University http://ifdl.jp/ SW/HWが断絶した世界とは? コンピュータの構成要素(トランジスタ)の「ガン化」 コンピュータ=決定論的システム(動作結果は計画通り) =構成要素の完全動作が前提 微細化→量子効果等による動作の不確実性↑ 「電流が流れないはず」のところで、流れる(ことがある) 現状では、製造技術や設計技術で、なんとか抑え込む そろそろヤバい(回路が思うとおりに動かなくなる) 「ハード屋」の言い分:ソフトウエアでなんとかしてくれ 「ソフト屋」の言い分:ハードウエアでなんとかしてくれ int i = 1; int a = 1, b = 2; c = a + b; このプログラムで、 i=1, c = 3 とならない(かも)
  • 20.
    2018/8/26 Interface DeviceLaboratory, Kanazawa University http://ifdl.jp/ どれくらいギリギリなのか? S→Dに流れる電流を、Gに加える電圧でON/OFF 不安要因 製造ばらつき(設計通りの形状にならない) 不純物ばらつき(電気特性が設計通りにならない) トンネル効果(OFFにしたつもりが電子が通り抜ける) ref: https://slideplayer.com/slide/7843454/ Si原子(直径0.2nm) ×50 =
  • 21.
    2018/8/26 Interface DeviceLaboratory, 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 「正しく動作する」と 信じていたものが・・・
  • 22.
    2018/8/26 Interface DeviceLaboratory, Kanazawa University http://ifdl.jp/ CPUを「つくる」ことでわかること 仕組みを理解できる 回路→頭脳につながる瞬間 「ヤバそう」ぐらいは わかるかも 少なくとも中で何が起こって いるか、は見えるはず 小規模:手設計でいけそう 大規模:どうやろう?
  • 23.
    2018/8/26 Interface DeviceLaboratory, Kanazawa University http://ifdl.jp/ CPUをどう「つくる」のか?(1) 論理ICを並べて手配線→4bitくらい さすがに手設計はこれぐらいが限界 HDLで書く→8bitくらい PICくらいなら、慣れればできる 教科書的なRISCアーキテクチャ ATtiny10のアーキテクチャ
  • 24.
    2018/8/26 Interface DeviceLaboratory, 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などもある
  • 25.
    2018/8/26 Interface DeviceLaboratory, Kanazawa University http://ifdl.jp/ CPUの「コンパイル」 ソース (HDL) ライブラリ 回路(IC) 論理合成 配置配線 FPGA ASIC(シリコン) ターゲット(回路)にあわせたライブラリ 論理ゲート、演算器等(マクロ) ※プログラムのコンパイル・リンクとだいたい同じ
  • 26.
    Interface Device Laboratory,Kanazawa University http://ifdl.jp/ IoT時代の 「技術」との付き合い方
  • 27.
    2018/8/26 Interface DeviceLaboratory, Kanazawa University http://ifdl.jp/ 「マイコン」という概念 マイコン=Micro-controller / Micro-computer 技術的には:枯れた技術の固まり RISC, Flashメモリ, ... ハーバードアーキテクチャ, … 使い方的には・・・? 「コンピュータ」が安く小さくなることの意義 単なる「安くて小さいコンピュータ」ではない パラダイム(常識・概念)の転換(の可能性) (Atmel ATtiny10データシートより) (日立/Renesas H8/3048F)
  • 28.
    2018/8/26 Interface DeviceLaboratory, Kanazawa University http://ifdl.jp/ コンピュータが「頭脳」から「部品」に 出典:ARM 機器の頭脳 関節ごとに小さい脳(神経節) コンピュータが、システムの「主役」から「構成要素(部品)」になった ※基本的には「コンピュータ」だが、小型で安価
  • 29.
    2018/8/26 Interface DeviceLaboratory, Kanazawa University http://ifdl.jp/ 「Lチカ」から考える半導体 =「LEDチカチカ」(LED Blink) 「LEDを点滅させる」こと プログラミングにおける”Hello World”的なもの (まず始めに試すやつ)
  • 30.
    2018/8/26 Interface DeviceLaboratory, Kanazawa University http://ifdl.jp/ ※ウソです 広辞林(第6版)より
  • 31.
    2018/8/26 Interface DeviceLaboratory, Kanazawa University http://ifdl.jp/ 日本工業標準調査会(JISC) JIS規格一覧 ※ウソです
  • 32.
    2018/8/26 Interface DeviceLaboratory, Kanazawa University http://ifdl.jp/ PCで「Lチカ」・・・? while(1){ a = 1; sleep(1); a = 0; sleep(1); } 「可能」ではあるが、「現実的」ではない
  • 33.
    2018/8/26 Interface DeviceLaboratory, 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(小さなコンピュータ)
  • 34.
    2018/8/26 Interface DeviceLaboratory, Kanazawa University http://ifdl.jp/ IT/ICT業界とハード業界が近づいた  大企業でなくてもハードを製造販売できるようになった  製造技術が身近になった(電子回路、3Dプリンタ、・・・)  部品メーカ、設計者、ユーザの「生態系(Ecosystem)」  ソフト+ハード+サービスで「世の中変える」  多様なニーズ、無視できないロングテール(ニッチ)  従来型製造業の補完(置換ではない)  クラウド・ファンディング=市場調査+資金調達 (売ってみないとヒットするかはわからない) Maker Faire Tokyo 2015 (多数の「作ってみた」) (C.アンダーソン「ロングテール」,早川書房 (2009)) 全体の40%
  • 35.
    2018/8/26 Interface DeviceLaboratory, Kanazawa University http://ifdl.jp/ (おまけ)今年のMakerFaireTokyoで 持ってきているので、 あとでやってみましょう
  • 36.
    2018/8/26 Interface DeviceLaboratory, Kanazawa University http://ifdl.jp/ (おまけのおまけ) コイル:400T 磁石:ダイソーのNd磁石 固定具等:3Dプリンタで成形 3Vppくらいはでそう
  • 37.
    2018/8/26 Interface DeviceLaboratory, Kanazawa University http://ifdl.jp/ IT/ICT業界の現状:深圳の華強北 37 山寨(ShanZhai)の例(“iPhone nano”) ※FakeCopyではなく、プロダクトの 進化系。これが2週間で量産される 無限に続くパーツ屋 “Used Mobile Phone Shop”の実体 パーツに分解 (BGAも) 路上で解体 店頭でリペア 新製品の試作に流用 ShenZhen HuaQiangBei 基板製造 + 部品(サプライチェーン) + 起業(ハードウエアスタートアップ) + 資本(VC/アクセラレータ) 深圳の生態系 謎の起業・新製品が続々(ときどきアタる) 世界中から頭脳と資金が集まり、 イノベーションを生み出している 「ハードウエアのシリコンバレー」とも
  • 38.
    2018/8/26 Interface DeviceLaboratory, Kanazawa University http://ifdl.jp/ ハードとソフトが混ざってきたのは? ハード技術が「道具」になったから 開発/発明される お店で買えるようになる 使い方が知られるようになる みんなが使うようになる それが「道具」となって、次のステップへ プロのみ マニア(ハイレベルアマチュア)向け だれでも プロ(詳しい人)しか使えない アマ(詳しくない人)でも使える
  • 39.
    2018/8/26 Interface DeviceLaboratory, Kanazawa University http://ifdl.jp/ 技術が生まれて「道具」になるまで エリンギの例 1993年に日本へ 2003年ごろから一般化 ↑10年かかって「道具」に 料理番組、調理例・・・ 農林水産省「平成20年度 農林水産物貿易円滑化推進事業 台湾・香港・シンガポール・タイにおける品目別市場実態調査 (生鮮きのこ)報告書」(林野庁経営課特用林産対策室 )より
  • 40.
    2018/8/26 Interface DeviceLaboratory, Kanazawa University http://ifdl.jp/ IoT時代のコンピュータ IoT=色々なモノがインターネットにつながる ハードウエア=センサ、装置 ソフトウエア=情報処理(AI)、ネットワーク経路 サービス=何ができるか?(※一番だいじ) 「何ができるか(嬉しいか)」が一番だいじ そのために、ソフト・ハードも使える
  • 41.
    2018/8/26 Interface DeviceLaboratory, Kanazawa University http://ifdl.jp/ IT/ICT/IoTの本質:「サービス」 (例)スマホなくして困りますか? 何に困りますか? ハードウエア?・・・スマホ本体など ソフトウエア?・・・アプリなど サービス?・・・LINEのIDなど ソフトもハードも代わりがある サービスには代わりがない
  • 42.
    2018/8/26 Interface DeviceLaboratory, Kanazawa University http://ifdl.jp/ ソフト業界?ハード業界? ソフト業界 IT業界 SE/SI プログラマ アプリ Webサービス ハード業界 ものづくり(←死語) 景気悪そう?
  • 43.
    2018/8/26 Interface DeviceLaboratory, Kanazawa University http://ifdl.jp/ ソフト業界とハード業界の境界? だいぶあいまい だいたい両方やってる サービスだいじ 「モノを売っておしまい」ではない
  • 44.
    2018/8/26 Interface DeviceLaboratory, Kanazawa University http://ifdl.jp/ IoT時代に「技術」とどう付き合うか やろうと思えば、「自分でできることが」 圧倒的に増えた 技術の「道具化」、ハードウエアスタートアップ、 エコシステム 「誰かがやってくれる」のを待つのは、もったいない ※「ちゃんとやる」には専門家が必要なのも事実 「おばあちゃんセンシング」 畑の状況確認など、「センシング欲」は無限大 ×おばあちゃんが「技術を買う」 ◎おばあちゃん自身が「技術」を使う
  • 45.
    Interface Device Laboratory,Kanazawa University http://ifdl.jp/ 半導体を「道具」として持つこと
  • 46.
    2018/8/26 Interface DeviceLaboratory, 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=集積回路のこと)
  • 47.
    2018/8/26 Interface DeviceLaboratory, Kanazawa University http://ifdl.jp/ Lチカ動画:ニコ動でのコメント  こっから?  ニコ技界のTOKIO  ゲートの無駄遣い  ここから!!?  ひでえ、勿体ない使い方wwwww  マジかよ。レジストレベルの設計とか ガチすぎる。  無駄遣い過ぎるだろw  贅沢というかなんというか  え?まじでここからかよ」wwww」」  IC版FusionPCB的なところが現れれば・・・  (FPGAでは)いかんのか?  俺はFPGAで我慢することにする  いや、そこまでは必要ないです  量産品すらFPGA使う時代に専用LSI・・・  アマチュアはFPGAで良いんだよなぁ・・・w 「集積回路=すごいことをやるためのもの」という意識
  • 48.
    2018/8/26 Interface DeviceLaboratory, Kanazawa University http://ifdl.jp/ なんでこんなアホなことを? LSIは「道具」になりきっているか? オレLSI 「作る?ちょっとそこまでは・・・」「使うけど・・・」 他の技術はどうなってきたか? コンピュータ:大型機→PC マイコン:H8→Arduino プリント基板:業務用→アマチュア 3Dプリンタ:業務用→フィギュア 動画編集:映画→YouTube/ニコ動
  • 49.
    2018/8/26 Interface DeviceLaboratory, 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チカ」ってもったいない&無駄遣いすぎる
  • 50.
    2018/8/26 Interface DeviceLaboratory, Kanazawa University http://ifdl.jp/ 「道具」としての集積回路 「ハード」=電子回路、プリント基板あたり 「集積回路(半導体チップ)」までは、なかなか どうしても「今あるもの・使えるもの」を使う カメラ、Kinect、マイコン、FPGA・・・ 新技術で、一気にパラダイムが変わることがある 「集積回路をつくれる」という道具 =「いまできること」という発想の縛りから開放 Depth画像 ※昔は「可能だが高価」 →Kinect後は「誰でも使える」 →ユーザインタフェース界の革命
  • 51.
    2018/8/26 Interface DeviceLaboratory, 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) 製造:北九州の時間貸しクリーンルーム
  • 52.
    2018/8/26 Interface DeviceLaboratory, Kanazawa University http://ifdl.jp/ センサを「つくる」 基本、物理法則に沿っていれば 「何でもできる」 微細構造、界面、・・・ ADCなどの信号処理回路も集積OK 逆に、自由度が高すぎて、難しい 電子回路 量子力学 電磁気学 ・・・ ref: https://tech.nikkeibp.co.jp/dm/article/WORD/20090415/168824/
  • 53.
    2018/8/26 Interface DeviceLaboratory, Kanazawa University http://ifdl.jp/ 「オレMCU」はどうか? ARM Cortex-M0/M3 DesignStartプログラム 誰でもOK、評価目的でCortex-M0/M3のHDLソース
  • 54.
    2018/8/26 Interface DeviceLaboratory, 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命令 機械語の プログラム
  • 55.
    2018/8/26 Interface DeviceLaboratory, Kanazawa University http://ifdl.jp/ 「Lチカ専用Cortex-M0」:設計してみた CMOS 0.18um 5Al 0.55mm x 0.65mm ※このチップの設計は、東京大学大規模集積システム設計教育研究センターを通し、 日本ケイデンス株式会社、シノプシス株式会社研究センターの協力で行われたものです。 ※このチップの設計で使用したライブラリは、京都大学情報学研究科 田丸・小野寺研究室の 成果によるもので、京都工芸繊維大学 小林和淑教授によりリリースされたものです。 ※このチップの試作は、東京大学大規模集積システム設計教育研究センターを通し、 ローム(株)および凸版印刷(株)の協力で行われたものです。 Synopsys Design Compiler & IC Compiler ※クロック周波数=10MHz
  • 56.
    2018/8/26 Interface DeviceLaboratory, Kanazawa University http://ifdl.jp/ オレLSI:アナログLSI アナログ回路の「部品」をつないで設計 CMOS 0.18um 1P5M CMPx2+DFF+DisChgTr 本家とピン互換
  • 57.
    2018/8/26 Interface DeviceLaboratory, Kanazawa University http://ifdl.jp/ オレLSI:AI向けも AI/深層学習向けのプロセッサ 従来型の「ノイマン型コンピュータ」では苦手 いわゆるASIC(特定用途向けIC)だが、 少量多品種向け GoogleのTPU (Tensorflow Processing Unit)の例 ref: https://news.mynavi.jp/article/20170411-tpu/2
  • 58.
    2018/8/26 Interface DeviceLaboratory, Kanazawa University http://ifdl.jp/ オレLSI:IoT向けも IoTは、本質的に「少量多品種」 使う場面ごとに、必要な機能・性能が異なる 情報処理のやり方も多様(端末側?サーバ?) 環境発電(太陽電池、振動発電など)など、 超低消費電力が必要な場面も多い センサ プロセッサ 通信 記録 電源
  • 59.
    2018/8/26 Interface DeviceLaboratory, Kanazawa University http://ifdl.jp/ 集積回路を「つくる」ためのハードル 設計CAD 市販の業務用CAD: 高すぎ、高機能すぎ 製造方法 高すぎ、時間かかりすぎ(1000万円・半年) NDA(設計ルールなどのアクセス制限)が厳しすぎ ユーザ・コミュニティ 参入障壁:現状は専門家ばかり “How”の専門家は多いが、”Why/What”は皆無 いずれも、なんとかなりそう?
  • 60.
    2018/8/26 Interface DeviceLaboratory, Kanazawa University http://ifdl.jp/ オレLSIをつくってみたい:実践 情報収集・整理 探せば、ないことはない 仲間さがし http://j.mp/make_lsi
  • 61.
    2018/8/26 Interface DeviceLaboratory, Kanazawa University http://ifdl.jp/ MakeLSI: -CADツール 探せばいろいろある(フリーウエア) レイアウトツール:Wgex / Glade 回路シミュレーション:LTspice / Spice3 論理合成・配置配線: Alliance/Qflow プロジェクト内の標準ツール 使用法・設計法のノウハウの 共有・蓄積 IPの分散開発・蓄積 ※特殊なツールは、あまり いいことがない(ツールが目的ではないので、 長いものには巻かれるべき)
  • 62.
    2018/8/26 Interface DeviceLaboratory, Kanazawa University http://ifdl.jp/ MakeLSI: ー設計ルール OpenRule1um 0.5umグリッド・NDA(秘密保持契約)フリー フェニテック0.6um等でチップ製造可能 https://github.com/MakeLSI/OpenRule1um 標準ロジックゲートのスタンダードセル
  • 63.
    2018/8/26 Interface DeviceLaboratory, Kanazawa University http://ifdl.jp/ MakeLSI: -データの蓄積・再利用 GitHub上でデータを共有=再利用OK NDA-Free設計ルール= NDA-Free IP 迅速なIP開発  共通設計環境・プロセス  多くの参加者による開発  品質が低い場合もある(バグ、エラー)  品質も参加者により改善される? Cf. OSS (Open Source Software; Linux, etc.)  品質はコミュニティメンバにより迅速に改善  コミュニティメンバの開発・改良への熱意  オープンな枠組み(ソースコード、ライセンス)が必要
  • 64.
    2018/8/26 Interface DeviceLaboratory, Kanazawa University http://ifdl.jp/ MakeLSI: -チップ製造(近い将来) ミニマルファブ 0.5インチウエハ・局所クリーン化・DLP露光 小ロット・短TAT(製造期間)のLSI製造 加工寸法:1umくらい ムーアの法則→非先端プロセスでも十分な性能 設計ルールのNDA→λルールでオープンソース化? 5umルールでも十分(な人も多い) 価格:数万円(個人でもなんとか) あと数年で実用化? http://unit.aist.go.jp/neri/mini-sys/fabsystem/minimalfab.html
  • 65.
    2018/8/26 Interface DeviceLaboratory, Kanazawa University http://ifdl.jp/ チップを「つくる」 (イメージ:近い将来) 設計する(GDS形式) データをupload チップが届く cf: プリント基板 設計する(gerber形式) Webからデータをupload 基板が届く
  • 66.
    2018/8/26 Interface DeviceLaboratory, 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倍に 拡大して作成
  • 67.
    2018/8/26 Interface DeviceLaboratory, Kanazawa University http://ifdl.jp/ LSIが道具になるとは・・・ 『3Dプリンタは、私たちに「何をつくりたいの か」を問いかけているのです。』 あなたなら、何を作りますか? いまのうちから、考えておいても 損はないはず。