a hardware development on fpgas
DESCRIPTION
@Kosenconf-tohoku in Fukushima-NCT, 2009-08-29TRANSCRIPT
![Page 1: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/1.jpg)
FPGAで始める ハードウェア
設計 @shtaxxx
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 2: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/2.jpg)
はじめに 自己紹介
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 3: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/3.jpg)
Twitter: shtaxxx
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 4: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/4.jpg)
福島高専 電気工学科→ 東工大 工学部情報工学科→
東工大 大学院情報理工学研究科
計算工学専攻 修士1年
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 5: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/5.jpg)
専門 と 興味
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 6: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/6.jpg)
計算機 アーキテクチャ
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 7: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/7.jpg)
計算機の 仕組みを 研究
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 8: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/8.jpg)
マルチコア メニーコア が熱い!(?)
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 9: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/9.jpg)
Intel Core i7
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 10: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/10.jpg)
IBM SONY 東芝
Cell/B.E 09.08.29 高専カンファレンス in 東北 @福島高専
![Page 11: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/11.jpg)
SUN ROCK
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 12: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/12.jpg)
ネットワークオンチップ (NoC)
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 13: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/13.jpg)
投機的並列 スレッディング
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 14: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/14.jpg)
FPGAで作る 大規模 検証環境
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 15: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/15.jpg)
生まれて はじめての 高橋メソッド
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 16: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/16.jpg)
SHTA.X>みえてる?
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 17: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/17.jpg)
では 本題へ
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 18: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/18.jpg)
FPGAで始める ハードウェア
設計 09.08.29 高専カンファレンス in 東北 @福島高専
![Page 19: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/19.jpg)
今日の内容
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 20: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/20.jpg)
The first step
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 21: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/21.jpg)
そもそも ハードウェア ってなに?
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 22: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/22.jpg)
仕事の手順 (=命令)
を与えたら 動くもの
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 23: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/23.jpg)
ファミコンが ハードウェア
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 24: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/24.jpg)
スーパーマリオがソフトウェア
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 25: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/25.jpg)
身近な ハードウェアとソフトウェアは
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 26: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/26.jpg)
パソ コン
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 27: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/27.jpg)
ハードウェア 代表: CPU
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 28: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/28.jpg)
CPUの仕事: 命令を順番に こなす!
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 29: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/29.jpg)
命令を メモリから 持ってきて (Fetch)
09.08.29 高専カンファレンス in 東北 @福島高専
1
![Page 30: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/30.jpg)
命令を 解釈して (Decode)
09.08.29 高専カンファレンス in 東北 @福島高専
2
![Page 31: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/31.jpg)
実行! (Execution)
09.08.29 高専カンファレンス in 東北 @福島高専
3
![Page 32: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/32.jpg)
結果を 出力
(Write Back) 09.08.29 高専カンファレンス in 東北 @福島高専
4
![Page 33: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/33.jpg)
1~4を 繰り返す!
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 34: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/34.jpg)
命令の集まり= ソフトウェア
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 35: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/35.jpg)
09.08.29 高専カンファレンス in 東北 @福島高専
アプリケーション ライブラリ
OS
![Page 36: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/36.jpg)
全部 命令の集合
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 37: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/37.jpg)
みんな オリジナルの ソフトウェア 作るよね?
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 38: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/38.jpg)
だってPCが あれば
作れるもん! 無料だもん
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 39: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/39.jpg)
shtas-Mac:~ shta$ cat hello.c #include <stdio.h>
int main(){ printf("Hello, world!\n"); return 0; } shtas-Mac:~ shta$ gcc hello.c shtas-Mac:~ shta$ ./a.out Hello, world! 09.08.29 高専カンファレンス in 東北 @福島高専
![Page 40: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/40.jpg)
みんな オリジナルの ハードウェア 作るよね!
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 41: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/41.jpg)
例えば オリジナル
CPU 09.08.29 高専カンファレンス in 東北 @福島高専
![Page 42: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/42.jpg)
Javaの バイトコードを そのまま実行
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 43: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/43.jpg)
特殊命令追加で 高速化
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 44: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/44.jpg)
パターン マッチング 専用コア
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 45: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/45.jpg)
ハードウェア Twitter
クライアント 09.08.29 高専カンファレンス in 東北 @福島高専
![Page 46: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/46.jpg)
作るよね!!
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 47: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/47.jpg)
作りたい! 09.08.29 高専カンファレンス in 東北 @福島高専
![Page 48: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/48.jpg)
でも チップ製作は
高い orz orz
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 49: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/49.jpg)
もっと 手軽に
できないかな? 09.08.29 高専カンファレンス in 東北 @福島高専
![Page 50: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/50.jpg)
そこで FPGA
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 51: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/51.jpg)
FPGAとは 書き換え可能な ディジタル回路
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 52: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/52.jpg)
例えば
09.08.29 高専カンファレンス in 東北 @福島高専
CPU MPEG4 Encoder
かきかえ!
![Page 53: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/53.jpg)
どんな形?
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 54: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/54.jpg)
Xilinx Spartan
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 55: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/55.jpg)
Altera Cyclone
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 56: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/56.jpg)
LatticeXP2
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 57: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/57.jpg)
要は ICチップです
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 58: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/58.jpg)
なにがあれば 開発できるのか
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 59: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/59.jpg)
統合開発環境
09.08.29 高専カンファレンス in 東北 @福島高専
1
![Page 60: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/60.jpg)
例) Xilinx ISE
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 61: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/61.jpg)
Web Packなら 無料でDL できます
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 62: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/62.jpg)
FPGA基板
09.08.29 高専カンファレンス in 東北 @福島高専
2
![Page 63: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/63.jpg)
例) アットマークテクノ社 SUZAKU-S
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 64: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/64.jpg)
例)MieruPC社 FPGACard
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 65: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/65.jpg)
[AD] 詳しくはこちらまで! MieruPC株式会社 http://mierupc.com/
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 66: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/66.jpg)
もちろん 無料では ありません
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 67: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/67.jpg)
書き込み ケーブル
09.08.29 高専カンファレンス in 東北 @福島高専
3
![Page 68: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/68.jpg)
例)Digilent社 JTAG USB Cable
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 69: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/69.jpg)
もちろん 無料では ありません
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 70: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/70.jpg)
これだけあれば 何度でも オリジナル
ハードウェアが 作れる!
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 71: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/71.jpg)
えー 無料で
できないのー? ねぇ?
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 72: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/72.jpg)
波形 シミュレーション
なら無料で できます!
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 73: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/73.jpg)
必要なもの
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 74: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/74.jpg)
シミュレータ
09.08.29 高専カンファレンス in 東北 @福島高専
1
![Page 75: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/75.jpg)
例) ISE ISim
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 76: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/76.jpg)
ISE Web Pack と一緒に
インストール できます
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 77: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/77.jpg)
例) iverilog
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 78: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/78.jpg)
Macportsなら
sudo port install iverilog
でインストール できます
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 79: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/79.jpg)
どうやって 開発するの?
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 80: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/80.jpg)
基本は ソフトウェア と同じ流れ
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 81: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/81.jpg)
ソフトウェア の場合
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 82: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/82.jpg)
言語を選ぶ C, Java, Ruby
とか 09.08.29 高専カンファレンス in 東北 @福島高専
![Page 83: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/83.jpg)
エディタで ごりごり 書く
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 84: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/84.jpg)
(必要なら) コンパイルして 機械語に変換
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 85: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/85.jpg)
実行!! 09.08.29 高専カンファレンス in 東北 @福島高専
![Page 86: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/86.jpg)
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 87: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/87.jpg)
FPGAの場合
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 88: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/88.jpg)
言語を選ぶ VHDL
Verilog HDL とか
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 89: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/89.jpg)
エディタで ごりごり 書く
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 90: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/90.jpg)
コンパイルして シミュレーション
もしくは FPGAに書き込む
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 91: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/91.jpg)
どうやって 回路を書くの?
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 92: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/92.jpg)
ソフトウェアの場合
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 93: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/93.jpg)
プログラミング言語で記述
例)C, Javaとか 09.08.29 高専カンファレンス in 東北 @福島高専
![Page 94: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/94.jpg)
FPGAの場合
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 95: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/95.jpg)
ハードウェア 記述言語 で記述
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 96: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/96.jpg)
VHDL Verilog HDL
など 09.08.29 高専カンファレンス in 東北 @福島高専
![Page 97: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/97.jpg)
まず 書いてみよう!
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 98: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/98.jpg)
Step 1 Hello, World! 的なもの
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 99: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/99.jpg)
= LEDチカチカ
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 100: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/100.jpg)
module HELLO(CLK, RST_X, LED); input CLK; //入力ポート クロック信号 input RST_X; //入力ポート リセット信号 output LED; //出力ポート LEDに接続
reg [21:0] counter; //22bitの内部レジスタ
assign LED = counter[21]; //継続的代入文 //counterの21bit目をLEDに接続するイメージ
//always文 CLKやRST_Xの変化に合わせてどうなるか always @(posedge CLK or negedge RST_X) begin if(!RST_X) begin //リセット時 counter <= 0; end else begin counter <= counter +1; //1増える end end endmodule
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 101: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/101.jpg)
ちかちか!
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 102: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/102.jpg)
波形
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 103: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/103.jpg)
簡単でしょ?
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 104: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/104.jpg)
Verilog HDLの 簡単な文法
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 105: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/105.jpg)
reg [7:0] hoge 7番目がMSB 0番目がLSBの
8ビットのレジスタ (値の入れ物)
09.08.29 高専カンファレンス in 東北 @福島高専
7 6 5 4 3 2 1 0
![Page 106: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/106.jpg)
wire [7:0] fuga 7番目がMSB 0番目がLSBの 8ビット分の配線
09.08.29 高専カンファレンス in 東北 @福島高専
7 6 5 4 3 2 1 0
![Page 107: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/107.jpg)
代入: =
または <=
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 108: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/108.jpg)
= ブロッキング代入
即時に値が反映される 09.08.29 高専カンファレンス in 東北 @福島高専
![Page 109: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/109.jpg)
<=
ノンブロッキング代入 ブロックの最後に まとめて反映される
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 110: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/110.jpg)
Q) aが3,bが4のとき a = b; b = a;
の結果は? 09.08.29 高専カンファレンス in 東北 @福島高専
![Page 111: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/111.jpg)
A: aもbも4
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 112: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/112.jpg)
Q) aが3,bが4のとき a <= b; b <= a;
の結果は? 09.08.29 高専カンファレンス in 東北 @福島高専
![Page 113: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/113.jpg)
A: aは4 bは3
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 114: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/114.jpg)
他にも ありますが 時間が・・・
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 115: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/115.jpg)
Step X オリジナル 計算機
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 116: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/116.jpg)
例) MieruPC
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 117: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/117.jpg)
FPGA: Xilinx
Spartan 3E 09.08.29 高専カンファレンス in 東北 @福島高専
![Page 118: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/118.jpg)
CPU: MIPS準拠 オリジナル プロセッサ
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 119: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/119.jpg)
メインメモリ:52KB
キャッシュ: なし
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 120: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/120.jpg)
補助記憶: MMC(SD) カード
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 121: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/121.jpg)
Verilog HDLで フルスクラッチ
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 122: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/122.jpg)
たった1000行
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 123: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/123.jpg)
意外と簡単そう
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 124: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/124.jpg)
MieruPCプロジェクト: 中身が見える
計算機システムを構築する 研究・教育プロジェクト
http://www.arch.cs. titech.ac.jp/mieru/
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 125: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/125.jpg)
一緒に計算機 開発しようよ!
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 126: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/126.jpg)
まとめ 09.08.29 高専カンファレンス in 東北 @福島高専
![Page 127: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/127.jpg)
ソフトウェア 同様
ハードウェアも 手軽に開発可能
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 128: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/128.jpg)
FPGAで オリジナルの ハードウェアが 実現できる!
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 129: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/129.jpg)
シミュレーション なら無料!
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 130: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/130.jpg)
オリジナルの ソフトウェア だけじゃなく
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 131: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/131.jpg)
オリジナルの ハードウェアも
作ろう! 09.08.29 高専カンファレンス in 東北 @福島高専
![Page 132: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/132.jpg)
そして オリジナルの
計算機 を作ろう!
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 133: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/133.jpg)
ソフトウェア +
ハードウェア = 最強
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 134: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/134.jpg)
ご清聴 ありがとう ございました @shtaxx
09.08.29 高専カンファレンス in 東北 @福島高専
![Page 135: A Hardware Development on FPGAs](https://reader034.vdocument.in/reader034/viewer/2022051209/54812924b379596a2b8b5ca2/html5/thumbnails/135.jpg)
画像の引用元 http://pc.watch.impress.co.jp/docs/2008/0811/intel.htm
http://www.superblog.jp/mt/archives/2007/08/ http://arstechnica.com/hardware/news/2008/02/sun-can-you-smell-
what-the-rock-is-cookin.ars http://www.fs-jpc.net/parts/cpu.html
http://av.watch.impress.co.jp/docs/20041221/nexx.htm http://commons.wikimedia.org/wiki/File:Fpga_xilinx_spartan.jpg
http://www.easyfpga.com/Products/EZ1CUSB/Images/ez1cusb_top_small.jpg
http://www.kumikomi.net/article/news/2007/05/30_01_p1.jpg http://www.atmark-techno.com/en/products/suzaku/suzaku-s
http://mierupc.com/product/fpgac.html http://www.digilentinc.com/Products/Detail.cfm?Prod=JTAG-USB
09.08.29 高専カンファレンス in 東北 @福島高専