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

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

「Chiselクイックリファレンス」書きました

スポンサーリンク

長らくお休みしてましたが、やっと落ち着いたのでブログも再開。 今回はとりあえずお知らせネタを。

Chiselクイックリファレンス

すでにtwitterでは宣伝してますが、「Chiselクイックリファレンス」という本を書きました。 これは皆さんよくご存知の事情によって中止になってしまった技術書典8向けに書いていた本です。

もともとのきっかけは、Chiselもそろそろ普通に書けるようになってきたなー、、という時に もっと楽をするためにChiselのライブラリ本体のコードについての解析を始めたことにあります。 その過程において自分がまだ使ったことないオブジェクトが結構あることに気づき、そこから自分の開発において そららのライブラリを使うようにしていました。

その過程で思ったことが、、、

  • あれこれの使い方ってどうだっけ??
  • こんなことやってくれるライブラリはないんだっけ??
  • コレ使うとどんなRTLが生成されるんだ??

ということでした。 すでにChiselを使っている方はご存知と思いますが、とにかくサンプルコードが少ないんですよね。。。 なので前回の技書博2向けの時と同様に、ないなら自分で書いてしまおう!ということで書いてみました。

中身

ざっと目次は次の画像の通りです。

f:id:diningyo-kpuku-jougeki:20200308220100p:plain
目次その1

f:id:diningyo-kpuku-jougeki:20200308220115p:plain
目次その2

最初はただひたすらにchisel3.util.Queueとかをアルファベット順に並べて、使い方とサンプルコードを載せることを 考えていたのですが、twitter等でご意見をもらった所、それよりは「こういう時にどういった方法がある」という形式の 方が良さそうとのことで、ざっくりと分類をして今の形に落ち着きました。

紹介のページは次のように、簡単な使い方の紹介とサンプルコード、それから生成されるRTLについても必要なものは掲載しています。

f:id:diningyo-kpuku-jougeki:20200308220205p:plain
中身その1

f:id:diningyo-kpuku-jougeki:20200308220225p:plain
中身その2

とはいえ、前回の「Chiselを始めたい人に読んで欲しい本」と内容がかなーーーーーーーりかぶっている部分がありますのですでにそちらをお買い上げいただいた方で、興味あるかもーー!!という方は事前に目次に目を通してから判断することをオススメします。

逆にまだChiselは書いたことないけどScalaの紹介とかはいらないよーという方は、こちらの方が良いかもしれません

この本は今開催中の「技術書典応援祭」とBOOTHの自分のページで販売中です。

ご興味お有りでしたらお手にとっていただけると嬉しいです!!

今後の予定

本書は今後も適宜、アップデートを行っていく予定です。というのも書いてる時点でもすでに「これ、忘れたなー」とか 「こういう使い方もあるんだ!」といった事が出てきており、それらも含めておきたいというのがあるからです。

もしChiselを始めた方で本書についての不明な部分や、こういうのはないの??という疑問などあれば教えて頂けると嬉しいです。 それらも時間の許す限り、取り込んで更新していきたいと思っています。

そのような形でアップデートしつつ、どこかのタイミングで印刷して物理本も作ろうかと思っています。 次の技書博には申込済みなので、タイミング的にはそこでしょうか。。。(自分が手元で使えるのが欲しいというのもある。)

ということで、完全な宣伝でした。