ぱたへね

はてなダイアリーはrustの色分けができないのでこっちに来た

FPGA入門回路図とHDLによるディジタル回路設計

すすたわりさんのFPGA入門回路図とHDLによるディジタル回路設計読みました。表紙や帯に可愛らしい絵がありますが、中身は硬派なデジタル回路の入門書です。

内容

この本は、HDLの文法やFPGAの動かし方を学ぶ本ではなく、FPGAを使ってデジタル回路を学ぶ本です。用語の説明、デジタル回路の説明、FPGAの説明、全て丁寧に書かれていて、本全体を通してとてもわかりやすく書かれています。最初はFPGAを取り巻くIC全般から始まり、開発環境の説明を経て、ようやく回路図による回路設計に入ります。デジタル回路の基本的な部品の説明が続きますが、基本の立ち位置は回路図で説明されています。表紙の絵に釣られて、FPGA Hack的なテクニックを期待して購入すると期待はずれになります。FPGAの説明はXilinxですが「なぜこういう設定が必要なのか」というポイントを押さえられれば、Alteraで同様の機能を探すのは難しくないでしょう。

この手の本には珍しく、本の最後に将来への筆者の思いがあります。筆者がめざしている将来が少し見えてきて、今後電子工作というくくりがどうなるのかなと考えるのも楽しかったです。

対象読者

真剣にデジタル回路を勉強したい人向けです。
この本で説明されているのは、微分回路、多数決回路など基本的なデジタル回路だけではありません。チャタリングの取り除き方、CMOS出力の説明等、デジタル回路のエンジニアが必ず押さえておきたい所まで説明があります。飛ばさずにしっかりと読んで欲しいです。

この本では、FFのバリエーションも丁寧に説明してあります。例えば、FTRSE(イネーブル、セット、リセット付トグルFF)についても、基本的なゲートを使った回路に置き換えて説明がしてあります。

http://www1.pldworld.com/@xilinx/html/technote/TOOL/MANUAL/15i_doc/alliance/lib/lib5_55.htmから

HDLの時代にFTRSEを直に使う事はまず無いのですが、ベテランのエンジニアにさらっとこういう図を入れて説明される事は時々あります。同じようにset、resetを積極的に使う回路は、リソースが厳しい時に非同期の入出力で使われます。古い技術に見えますが、どれも「回路設計の常識」として押さえておきたい範囲です。また、FPGAの最大速度を追い求めるときにも、このような知識は必須になります。例えばクロックイネーブルは、FPGAのプリミティブで実装されているのか、ゲートを前後に挟んで同じ動作をしているのか、その場合どうすれば前後のゲートを除去できるか、等はHDLとCADの出力を比べながら追うしかありません。このときに、FFの図の意味がわからないとお手上げになってしまいます。

これからデジタル回路を真剣に勉強したい人に、最初から最後までじっくりと読んで欲しいです。

絵が可愛いです。難しい事を書いてあるときに、可愛い挿絵が来るとほっとします。もっと絵増やして欲しいです。むしろ一章全部漫画でも。

索引

扱っているトピックが広いので、索引はもう少し欲しいと感じました。(例えば、微分回路や多数決回路は索引から引きたいです。)