KCU1500 + SDAccelの環境を再セットアップ.今度はUbuntuで構築することにしてみました.基本的な手順は,KCU1500+SCAccelの環境構築の通りなのですが,4.4.0なカーネルを利用するために一手間必要だったのでメモ.
続きを読む投稿者「miyo」のアーカイブ
Qflowを使ってSJRで作ったHDLファイルを合成・配置配線してみた
Qflowを使ってSynthesijerで作ったLチカモジュールを合成・配置配線してみました.
ターゲットは,SynthesijerのサンプルのLチカ.カウンタだけの簡単なLチカプログラムです.Synthesijerで生成したVerilogファイルを入力に
qflow synthesize led
qflow place led
qflow routing ledとした結果をmagicでみてみると次のような感じに.とりあえず,記述としては受理されるようでよかった(中身はこれからおってみる)

Xilinx FPGA向けCortex-M1を合成してみた
arm Cortex-M1(Cortex-M0をFPGA向けに最適化したコアらしい)がXilinx FPGAで無償で利用できるという話をきいたので,試してみました.
リソースは,Easy Access to Cortex-M Processors on FPGA からアクセスできる.
XC7A35向けの合成で,リソース使用量は,
- Slice LUT 3481 (16.7%)
- Slice FF 2814 (6.8%)
- Slice 1171 (14.4%)
- BlockRAM 24 (48%)
- DSP 3 (3.3%)
という結果.HCLKという動作クロックっぽいポートには100MHzが供給されていた.
MicroBlazeは,テンプレートで作ったササンプルデザインで,最適化オプションがPERFORMANCEで1405 Slice,最適化オプションがAreaで316 Sliceなので,Cortex-M1のリソース使用量は,その間くらいに当たるよう.
配置配線のフロアマップは下の通り.
続きを読むZYBO Z7-20でPYNQを使う
KCU1500+SCAccelの環境構築
うっかりyum updateしてしまったCentOSにSDAccel環境を構築しました.スペックはこんな感じ.
- CentOS Linux release 7.5.1804 (Core)
- 3.10.0-862.11.6.el7.x86_64
- SDx 2018.2
ドライバのインストールにこんな driver.patch が必要でした,というメモ.
続きを読むシストリックアレイな行列演算器
GoogleのTPU論文で界隈が賑わっていますが,いくつか目をひくポイントの一つが256×256のシストリックアレイな行列演算器ではないでしょうか.
というわけで(?)シストリックアレイな行列演算器をSynthesijer.Scalaで書いてみました.
ソースコードは mkSystolicMatrixMultiplicationUnit.scala です.
続きを読むFPGAマガジン No.14 掲載記事の関連リストと補足
FPGAマガジン No.14に掲載していただいた”第8章 画像データをダイレクト入力! OpenCLによるカメラ制御&画像処理”の関連リストおよび補足です.
サンプルをベースに開発環境を試す編
I/Oチャネルを使ってカメラから画像を取得する編
I/Oチャネルを使ってカメラから画像を取得しつつYUV→RGB変換する編
FPGAマガジン No.13 掲載記事の関連リストと補足
FPGAマガジン No.13のMAX10特集に掲載していただいた”第1章 MAX10+BLEモジュールでスマホ制御ラジコンを作る!”の関連リストおよび補足です.
記事では,Macnicaから販売されているOdyssey MAX10 FPGA Eval Kitを紹介しています.提供されているOdyssey IoT Solutionsを使って,”簡単な”FPGA+BLEなモバイルアプリケーションを”簡単”に開発できる環境です.FPGAに限らず組み込み関連では,ちょっとした簡単なことをしたいだけなのに準備が大変なことも多いのですが,この環境では手軽に試すことができます.
詳しくは,本文を参照いただければ嬉しいのですが,サンプルと補足はこちらをご覧ください.
続きを読むジグソーモデルな計算のHW実装,ことはじめ
ジグソーモデルは中野先生が提案された,ジグソーパズルを利用したメタモルフィズムの計算機構,です.
計算の途中の状態をジグソーパズルのピースに見立て,入力と時々の状態に対してうまく当てはまるようにピースを並べていけば計算が終わるという楽しい計算機構です.データの与えられ方によっては並列に計算できたり,入力が中途半端に与えられた状態でもできる部分から計算できたり,という特徴があります.
2013年のプログラミングシンポジウムで話を聞いたときに,HDLで書いてハードウェア化してみるのもいいかなーと思いながらも,なんとなく2016年の今日までそのままに…
とりあえずは最初の例題くらいは実装しておこうと,ふと試してみました.
続きを読む