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

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

2019-02-01から1ヶ月間の記事一覧

Chisel Bootcamp - Module3.5(3) - グレイコードのエンコーダとデコーダ

前回のChiselの記事ではFIRRTLを可視化するツールdiagrammerを試してみた内容をまとめた。 今回はしばらく進めていなかったChisel-Bootcampに戻り、Module3.5の残りを見ていく。 オブジェクト指向プログラミングをChiselに適用すると??という話だ。

FIRRTLの可視化ツールdiagrammerを試してみた

少し前にChiselの公式ツイッターがツイートしていたdiagrammerというChiselから生成されるFIRRTLをグラフにして可視化するツールを試してみた内容を書いてみる。

Chiselで作ったモジュールをPeekPokeTesterでテストするまでの流れのまとめ

前回のChiselの記事では今更ではあるがChiselでデザインしたハードウェアをVerilogのRTLに変換するためにやることについてをまとめた。 今日はついでなので、前回の続きというかその前の段階とかに位置しているはずのChiselで作っているハードウェアをそのま…

Chiselで設計したハードウェアをVerilogのRTLに変換する流れのまとめ

前回のChiselの記事では`Bundle`を使ってオプションのIOポートをまとめて制御する方法を紹介した。 最近Chisel周りの調査をいろいろやっているが、ChiselのコードをVerilogのRTLに変換する方法についてを簡単にまとめた日本語の記事が見当たらない気がしたの…

ChiselのBundleとSomeを使ったデバッグ用インターフェースの作り方

前回のChiselの記事ではBundleの基本的な使い方についてをまとめたみた。 www.tech-diningyo.info 今回は前回まとめたBundleを使ってモジュールのIOポートをオプション化する方法についてをまとめておく。 ChiselでIOポートのオプション化するには? モジュ…

ChiselのBundleの使い方をまとめてみる

前回のChiselの記事では出力ポートに`0xdeadbeaf`を定数で入れたらエラーが出てハマったので解決方法について調べた。 今回はChisel-Bootcampではサラッと流されているChiselの`Bundle`を使ったデータの構造化についてをまとめてみる。

ChiselのUIntで大きな定数を使おうとしてハマった話

前回のChiselの記事ではChisel-bootcampのModule3.5のコンパニオン・オブジェクトとケース・クラスについてを勉強した。 今回はちょっとChisel-Bootcampから離れてChiselを試していたハマったUIntの大きい定数値の扱いについてを紹介していく。

Chisel Bootcamp - Module3.5(2) - Scalaのコンパニオン・オブジェクトとケース・クラス

前回のChiselの記事ではChisel-bootcampのModule3.5に入りScalaのオブジェクト指向言語としての特徴からクラスとトレイトについてを見ていった。・ 今回も引き続きModule3.5に取り組んでいく。前回の最後に記載したとおり今日はScalaのオブジェクト。

Chisel Bootcamp - Module3.5(1) - Scalaの抽象クラスとトレイト

前回のChiselの記事ではChisel-bootcampのModule3.4の練習問題でニューラルネットワークのニューロン回路を実装するという問題に取り組んだ。 www.tech-diningyo.info 今回はModule3.5に入っていく。ここで扱うトピックはScalaの関数型言語とは別に存在する…

Chisel Bootcamp - Module3.4(3) - Chiselで作るニューロン回路とChiselのFixedPoint

前回のChiselの記事ではChisel-bootcampのModule3.4でScalaの持つ関数型言語としての特徴をChiselにどう活かすかについてを勉強した。 www.tech-diningyo.info 前回の終わりにも書いたとおり、今日はModule3.4の残している練習問題に取り組んでいく。 Chisel…