Enviar pesquisa
Carregar
FPGAX 2
•
3 gostaram
•
2,667 visualizações
N
nishio
Seguir
Denunciar
Compartilhar
Denunciar
Compartilhar
1 de 24
Recomendados
同人誌を支える技術
同人誌を支える技術
Kazutake Hiramatsu
Yauc2015 publish
Yauc2015 publish
Kazushi Yamashina
Ppt003
Ppt003
Solur
2013合同新歓LT
2013合同新歓LT
uecmma
Cocoa勉強会ビギナーズramディスクとコマンドファイル
Cocoa勉強会ビギナーズramディスクとコマンドファイル
Satoshi Oomori
Starlingで何本かゲームを作ってみての感想[第3回 東京ひよこの会]
Starlingで何本かゲームを作ってみての感想[第3回 東京ひよこの会]
funyamora
NetBSD/Zynq
NetBSD/Zynq
Kaz Nakamura
量子アニーリングマシンのプログラミング
量子アニーリングマシンのプログラミング
nishio
Recomendados
同人誌を支える技術
同人誌を支える技術
Kazutake Hiramatsu
Yauc2015 publish
Yauc2015 publish
Kazushi Yamashina
Ppt003
Ppt003
Solur
2013合同新歓LT
2013合同新歓LT
uecmma
Cocoa勉強会ビギナーズramディスクとコマンドファイル
Cocoa勉強会ビギナーズramディスクとコマンドファイル
Satoshi Oomori
Starlingで何本かゲームを作ってみての感想[第3回 東京ひよこの会]
Starlingで何本かゲームを作ってみての感想[第3回 東京ひよこの会]
funyamora
NetBSD/Zynq
NetBSD/Zynq
Kaz Nakamura
量子アニーリングマシンのプログラミング
量子アニーリングマシンのプログラミング
nishio
夏プロ報告
夏プロ報告
nishio
ITと経営
ITと経営
nishio
部分観測モンテカルロ計画法を用いたガイスターAI
部分観測モンテカルロ計画法を用いたガイスターAI
nishio
交渉力について
交渉力について
nishio
If文から機械学習への道
If文から機械学習への道
nishio
組織横断型研究室構想
組織横断型研究室構想
nishio
2017首都大学東京情報通信特別講義
2017首都大学東京情報通信特別講義
nishio
強化学習その5
強化学習その5
nishio
良いアイデアを出すための方法
良いアイデアを出すための方法
nishio
強化学習その4
強化学習その4
nishio
強化学習その3
強化学習その3
nishio
強化学習その2
強化学習その2
nishio
強化学習その1
強化学習その1
nishio
線形?非線形?
線形?非線形?
nishio
機械学習キャンバス0.1
機械学習キャンバス0.1
nishio
首都大学東京「情報通信特別講義」2016年西尾担当分
首都大学東京「情報通信特別講義」2016年西尾担当分
nishio
勾配降下法の最適化アルゴリズム
勾配降下法の最適化アルゴリズム
nishio
Wifiで位置推定
Wifiで位置推定
nishio
ESP8266EXで位置推定
ESP8266EXで位置推定
nishio
Raspberry PiでWifiルータを作る
Raspberry PiでWifiルータを作る
nishio
Mais conteúdo relacionado
Mais de nishio
夏プロ報告
夏プロ報告
nishio
ITと経営
ITと経営
nishio
部分観測モンテカルロ計画法を用いたガイスターAI
部分観測モンテカルロ計画法を用いたガイスターAI
nishio
交渉力について
交渉力について
nishio
If文から機械学習への道
If文から機械学習への道
nishio
組織横断型研究室構想
組織横断型研究室構想
nishio
2017首都大学東京情報通信特別講義
2017首都大学東京情報通信特別講義
nishio
強化学習その5
強化学習その5
nishio
良いアイデアを出すための方法
良いアイデアを出すための方法
nishio
強化学習その4
強化学習その4
nishio
強化学習その3
強化学習その3
nishio
強化学習その2
強化学習その2
nishio
強化学習その1
強化学習その1
nishio
線形?非線形?
線形?非線形?
nishio
機械学習キャンバス0.1
機械学習キャンバス0.1
nishio
首都大学東京「情報通信特別講義」2016年西尾担当分
首都大学東京「情報通信特別講義」2016年西尾担当分
nishio
勾配降下法の最適化アルゴリズム
勾配降下法の最適化アルゴリズム
nishio
Wifiで位置推定
Wifiで位置推定
nishio
ESP8266EXで位置推定
ESP8266EXで位置推定
nishio
Raspberry PiでWifiルータを作る
Raspberry PiでWifiルータを作る
nishio
Mais de nishio
(20)
夏プロ報告
夏プロ報告
ITと経営
ITと経営
部分観測モンテカルロ計画法を用いたガイスターAI
部分観測モンテカルロ計画法を用いたガイスターAI
交渉力について
交渉力について
If文から機械学習への道
If文から機械学習への道
組織横断型研究室構想
組織横断型研究室構想
2017首都大学東京情報通信特別講義
2017首都大学東京情報通信特別講義
強化学習その5
強化学習その5
良いアイデアを出すための方法
良いアイデアを出すための方法
強化学習その4
強化学習その4
強化学習その3
強化学習その3
強化学習その2
強化学習その2
強化学習その1
強化学習その1
線形?非線形?
線形?非線形?
機械学習キャンバス0.1
機械学習キャンバス0.1
首都大学東京「情報通信特別講義」2016年西尾担当分
首都大学東京「情報通信特別講義」2016年西尾担当分
勾配降下法の最適化アルゴリズム
勾配降下法の最適化アルゴリズム
Wifiで位置推定
Wifiで位置推定
ESP8266EXで位置推定
ESP8266EXで位置推定
Raspberry PiでWifiルータを作る
Raspberry PiでWifiルータを作る
FPGAX 2
1.
FPGA体験記 (ライフゲームを作った話) 西尾泰和 13年6月5日水曜日
2.
自己紹介 • 最近DE0を買いました(素人) 13年6月5日水曜日
3.
自己紹介 • 最近本を出しました 4/24発売 nhiro.org/langbook 13年6月5日水曜日
4.
13年6月5日水曜日
5.
ビビっときた! 13年6月5日水曜日
6.
http://ja.wikipedia.org/wiki/%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:IBM_JX.jpg 「テレビに 絵が出る」 これこそ 原体験! 13年6月5日水曜日
7.
VGA出力 • 初めてのLED点灯から VGA出力までは本の通り すんなり… 13年6月5日水曜日
8.
• 背景色を白にしようとして、VGA規格上 0じゃなきゃいけないところまで塗って 表示されなくなった すんなり…というわけでもなく 13年6月5日水曜日
9.
• 円を書こうとしてなぜか1/4しか書かれな いと思ったら、うっかり符号付きのつも りでコードを書いていた すんなり…というわけでもなく 13年6月5日水曜日
10.
すんなり…というわけでもなく • 背景を白、前景を青にしたつもりが全部青い →RGBの3bitを通すはずのwireが[2:0]なしで宣言され ていてBのビットしか通っていない! 13年6月5日水曜日
11.
すんなり…というわけでもなく →LEの中のFFと、Embedded Memory Blockと SDRAMの区別がついていなかった (reg
vram[307200:0]してた) 13年6月5日水曜日
12.
13年6月5日水曜日
13.
すんなり…というわけでもなく • 640 *
480 = 307200bitの「RAM: 2-PORT」 (1-read I-write)を作成してVRAMに使った • 書き込んでみるとなぜか同じ模様が5箇所に 出たり、描かれない領域があったり • 先頭から1024bitずつ交互に塗ってみたら 5箇所同時に縞模様が描かれて、縞模様が10本描 かれた後、残りがベタ塗りに… 13年6月5日水曜日
14.
• 原因や抜本的な解決方法がわからない • RTLViewerで見てみたらMegaWizardが出力した 回路のアドレスのビット幅が期待より小さいよ うに見えたが、そうなら手のうちようがない •
面倒になったので4x4ピクセルで1bitにして 160x120の解像度にした(160 * 120は19200) すんなり…というわけでもなく 13年6月5日水曜日
15.
13年6月5日水曜日
16.
ライフゲーム • 作りました • http://www.youtube.com/watch?v=LGOcRXNXB78 •
FPGAでライフゲームを作りました - 西尾泰和のはてなダイアリー http://d.hatena.ne.jp/nishiohirokazu/20130424/1366736980 13年6月5日水曜日
17.
ランダムな初期化 • 線形帰還シフトレジスタ • 十分なランダムさか不安だったけど、 やってみたら今回の用途には十分だった •
「リングオシレータ型真性乱数器」という アプローチもあるようだけど今回はパス 13年6月5日水曜日
18.
全体の流れ • 160x120のメモリからの読み書きアドレスをイン クリメントする • 読んだデータを323bitのシフトレジスタにpush •
シフトレジスタの0, 1, 2, 160, 161, 162, 320, 321, 322 の9ビットを束ねてアドレスとし、ライフゲーム のルールがハードコードされた512bitのROMから 1bit読む • 読んだ値を160x120のメモリに書き込む 13年6月5日水曜日
19.
• 4ステップを各1クロックで動かそうと思ったけど 画面が流れる現象が起きたので各2クロックで動 かしてる (多分アドレスの計算が間に合ってない) 酷いところ 13年6月5日水曜日
20.
• Verilogにfor文があることを知らず、 Pythonで323行生成して貼りこんだ • →for文を覚えたので書きなおした •
→そもそも代入文1個でよかった 酷いところ 13年6月5日水曜日
21.
• とりあえず簡単な方法で作って、その後 カリカリに高速化しよう、とか思っていた • 消費したリソースは、LEが459個(3%)、メモ リが57912bit(11%)なので全然使い切ってない •
しかし現状、画面の更新に 3msec *と十分速 いのでこれ以上高速化しても楽しくない、 640x480にしても48msec * 8クロック * 160x120ピクセル / 50MHz 13年6月5日水曜日
22.
future work • VGAを読む方をやろうとしたけど... •
そもそもアナログで読むのにはクロックが足り ない…(DE0は50MHz、VGA信号は25MHz、DE0- nano搭載のADコンバータが1つのアナログピン を読むのに13クロック∼) • デジタルピンに無理やりつないでも1bitの色深度 で読めるんじゃないかと思ったが、うまくモニ タとして認識しない 13年6月5日水曜日
23.
future work • 「VGAを読んでそれを機械学習」をやるつもり だったのだけどデータの入力部分で頓挫 •
他にデータを流し込む方法は…? シリアル通信を実装する?? • 何のデータでやると楽しいかな…? 産総研の一杉先生の考案された大脳皮質のモデルBESOMに興味あり BESOM ver.2.0を描いてみた - 西尾泰和のはてなダイアリー http://d.hatena.ne.jp/nishiohirokazu/20130404/1365060376 13年6月5日水曜日
24.
future works • ブロックス・デュオのモンテカルロ木探索 を実装する?(UCB1までは実装経験あり) •
プレイアウトを画面に出したら楽しそう • でも木構造とかFPGAに相性悪そう…とい う先入観(malloc等の仕組みをまず自作? 13年6月5日水曜日