ハードウェアの気になるあれこれ

技術的に興味のあることを調べて書いてくブログ。主にハードウェアがネタ。

Chisel用のjupyter-notebook環境構築 on Windows10

現在絶賛Chiselの勉強中で、そのためにChisel-Bootcampというものを使って文法を学んできた。

これまでは自宅のデスクトップPCで作業をしており、そちらはWindowsLinux(Ubuntu16.04LTS)のデュアルブートになっているため、通常こういった開発系の作業はUbuntuを使って行っている。

そのため、Chiselの勉強に関してもこれまではUbuntu上に構築した環境で作業を行っていたが、実家帰省に伴い作業環境がWindows10のノートPCしかない状態である。

折角なので、Windows10環境にChisel-Bootcampを立ち上げてブログのネタにしてみようと画策したのが本記事だ。

  • インストール手順概要
  • Chisel-Bootcampのインストール
    • Javaのインストール
    • Pythonのインストール
    • Jupyter-notebookのインストール
      • jupyter-notebookの起動確認
    • Scalaのインストール
    • Chisel-bootcamp環境のダウンロード
続きを読む

Ultra96向けのBSPを使ったPetaLinuxのビルド

前回のUltra96ネタでは、ボードのチュートリアルを一通り試してみて、付属のマイクロSDの環境やVivado&SDKを使うことで基本的な開発を行うことが出来る感触を得た。

  • Ultra96 ボード用ブートローダー&Linux
    • 関連パッケージのインストール
    • PetaLinuxのインストール
    • プロジェクトの作成
      • PetaLinuxの環境設定
      • PetaLinuxのプロジェクト作成
      • デザインしたPL領域の取り込み
      • PetaLinuxのビルド
      • BOOT.BINの生成
    • マイクロSDの更新
    • テスト用のプログラムのビルド

今回はせっかくのZynqボードなので、PS領域のブートローダーやLinux環境を構築して、マイクロSDからブートするイメージを自分で立ち上げてみようと思う。

続きを読む

Chisel Bootcamp - 幕間(7) - カウンタ(Counter)

前回のChiselの記事では標準ライブラリに含まれているマルチプレクサに関するブロック(PriorityMux/Mux1H)を紹介した。

www.tech-diningyo.info

今日は幕間で紹介されているChiselのライブラリとしては最後になるCounterについて見ていく。

  • Module 3.2幕間: Chiselの標準ライブラリ
続きを読む

AvnetのUltra96を買ってみた

(本記事は「FPGA Advent Calendar 2018」24日目の記事です。)

勢いでAvnet Ultra96ボードを購入してみた。

せっかくなのでチュートリアルを一通り試して、どんなもんかね?というのをまとめてアドベントカレンダーのネタにしてみたもの。

  • Avnet Ultra96 ボードを試してみた
    • ボードについて
    • 主要機能
    • 動作確認
      • デモアプリ:LEDの点灯制御
  • チュートリアルを試してみる
    • Tutorial 01 Build a ZU+ MPSoC Hardware Platform
      • bdfのインストール
    • Tutorial 02 First ZU+ Application - Hello World
      • 1. プロジェクトの作成
      • 2. ZYNQ UltraScale + MPSoC の設定
      • 3. 適当にメモリを追加
      • 4. ハードウェアのエクスポートとSDKの起動
      • 5. BSPの作成
      • 6. Hello Worldプロジェクトの作成
      • 7. Hello Worldプロジェクトの実行
        • 1. DIPの設定を変更
        • 2. ターミナルを接続
        • 3. ビットストリームファイルをJTAG経由でFPGAに転送
        • 4. SDK上からHello Worldを実行
    • Tutorial 03 Generate and Run Bare Metal ZU+ Test Applications
      • Memory Tests
      • Peripheral Tests
      • Zynq MP DRAM Tests
    • Tutorial 04 FSBL and Boot from microSD Card
      • FSBLの作成
      • BOOT.binの作成
  • まとめ
続きを読む

Chisel Bootcamp - 幕間(6) - マルチプレクサ(PriorityMuxとMux1H)

前回の記事ではChiselの標準ライブラリに含まれているOneHotエンコードに関するブロックを紹介した。

www.tech-diningyo.info

今日はChiselのライブラリに用意されている2つのマルチプレクサについて見ていく。

  • Module 3.2幕間: Chiselの標準ライブラリ
続きを読む

Chisel Bootcamp - 幕間(5) - OneHotなデータを扱うライブラリ(UIntToOHとOHToUInt)

前回の記事ではChiselの標準ライブラリに含まれているビット単位の操作を行うブロックをを紹介した。

www.tech-diningyo.info

今日はChiselからOneHotエンコードのユーティリティを勉強していく。

続きを読む

Chisel Bootcamp - 幕間(4) - PopCountとReverse

前回の記事ではChiselの標準ライブラリからArbiterを紹介した。

www.tech-diningyo.info

今日も引き続きChiselの標準ライブラリを紹介していく。今日はChiselのユーティリティブロックからいくつかのモジュールを勉強する。

  • Module 3.2幕間: Chiselの標準ライブラリ
    • ビット単位のユーティリティ・ブロック
      • PopCount
        • RTLに変換すると
      • Reverse
        • RTLに変換すると
続きを読む