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

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

Chisel Bootcamp - Module2.4 (2) - レジスタを使ったフロー制御

前回の記事ではChisel BootcampのModule2.4に入り、レジスタについてを学んだ。

www.tech-diningyo.info

今回はレジスタを使ったフロー制御を見ていく。

  • Module 2.4: 順序回路
    • フロー制御
    • その他のレジスタを使った例
      • コムフィルタ
続きを読む

Chisel Bootcamp - Module2.4 (1) - レジスタ

前回の記事でChisel BootcampのModule2.3の学習が全て終了した。

www.tech-diningyo.info

今回は更に学習を進めてModule2.4に入っていく。

いよいよ「順序回路」だ!

  • Module 2.4: 順序回路
    • モチベーション
    • レジスタ
      • 例題:レジスタの使用方法
      • 宣言時の注意点
      • 例題:RegNext
      • 例題:RegInit
続きを読む

Chisel Bootcamp - Module2.3 (3) - フロー制御(練習問題)

前回の記事でChisel BootcampのModule2.3の学習自体が終わったところまで進んだ。

www.tech-diningyo.info

今回はModule2.3の練習問題に取り組んでいく。

  • Module 2.3: フロー制御
    • 練習問題
      • 多項式の計算回路
        • ステップ1 - Scalaで各多項式を関数化
        • ステップ2 - Scalaで各多項式の関数をまとめる
        • ステップ3 - Chiselでモジュールを作成
      • ステートマシン
        • ステップ1:テスト作成
        • ステップ1:ChiselでFSM作成
続きを読む

Chisel Bootcamp - Module2.3 (2) - フロー制御(Wire)

前回の記事でChisel BootcampのModule2.3に入りChiselのwhen/elsewhen/otherwiseについて勉強した。

www.tech-diningyo.info

今日からは引き続きModule2.3を進めていくが、今日扱うのChiselのWireについてだ。

  • Module 2.3: フロー制御
    • Wire宣言
      • Wireを使った4つの入力のソート
      • テストモジュールの書き換え
続きを読む

Chisel Bootcamp - Module2.3 (1) - フロー制御(when/elsewhen/otherwise)

前回の記事でChisel BootcampのModule2.2の組み合わせ回路の勉強が終わった。

www.tech-diningyo.info

今日からはModule2.3に入っていく。

タイトルは「フロー制御」だ。

  • Module 2.3: フロー制御
    • モチベーション
    • 最後に接続することが意味すること
    • When, elsewhen, otherwise
      • 例題:Chiselの条件分岐
続きを読む

Chisel Bootcamp - Module2.2 (2) - 練習問題

前回の記事ではChisel BootcampのModule2.2の学習を終え、残りは練習問題のみというところまで進めた。

www.tech-diningyo.info

今回はModule2.2の残りの練習問題を見ていく。

  • Module 2.2: 組み合わせ回路
    • 練習問題
      • 練習問題:MAC
      • 練習問題:アービター
      • 練習問題:パラメタライズ版加算器(オプション)
続きを読む

Chisel Bootcamp - Module2.2 (1) - 組み合わせ回路

前回の記事ではChisel BootcampのModule2.1の学習を終えた。

www.tech-diningyo.info

今回はModule2.2に入って学習を続けていく。内容は『組み合わせ回路』だ。

  • Module 2.2: 組み合わせ回路
    • モチベーション
    • 共通の演算子
    • 非対応の動作
    • 他のChiselの演算子
    • マルチプレクサと連結
続きを読む