100 Power Tips for FPGA Designers
Xilinx限定ですが、FPGA Hacksとも呼べるような本を見つけました。Kindle版なら$9.99なので、XilinxのFPGAを使いこなしたい人は今すぐ買いましょう。Hacks本と同じで、100個のネタ全てが驚く事を書いてあるわけではありませんが、細かいツールの話やFPGAプロトの話は他の書籍ではなかなか読むことができません。
内容
ネタの抜粋ですので、他にもいろいろ載っています。目次は公開されているので、気になる方は目次をチェックしてください。
Introduction
- FPGA開発で使う用語の説明など。
Efficient use of Xilinx FPGA Design Tools
- シミュレータ、合成ツール、検証用ツール、Lintの紹介。商用のツール中心です。
- Xilinxの開発フローの説明、各コマンドが何をしているかの説明があります。最近のXilinxの開発環境に組み込まれたPerl(xilperl)の話
- Xilinxの開発環境が使う環境変数の説明。例えば環境変数 XIL_MAP_NODRC を1にすると、mapを実行しているときにDRCのエラーを無効にできるとか、知ってました?
- ISEのバージョン情報の説明 Application Version M.81d Mがメジャーバージョン 81以下がマイナーバージョン。
- マイナーなツールの紹介。fpga_edline, reportgen, obngc 等。
- 各ツールが出すレポートの説明。.srp, .syrはXSTが出すレポート、.bldはngbuildが出すレポートなど。
Using Verilog HDL
- Verilogを使うときの名前の変換ルール。xstのオプションに -case をつけたときの挙動
- Gotcha Again More Subtleties in the Verilog and SystemVerilog Standards That Every Engineer Should Know(pdf) の紹介
- compiler directive の説明
- 間違えにくいport接続の方法
- 論理合成で消えちゃう物。initial, repeat, wait, fork/join 等
- いろんなalways
- インスタンス化するか推測させるか
- VHDLと混ぜて使う
- Verilogを書くのに便利なエディタの紹介(vim, emacs・・・)
Design Synthesis, and Physical Implementation
この章は、FPGAに特化した話が多くて面白いです。
Migratiing from ASIC to FPGA
Desgin Simulation and Verification
- カバレッジ、ランダム検証
- シミュレーションと合成結果のミスマッチ
- シミュレータの選択
- シミュレーションパフォーマンスの測定
IP Cores and Functional Blocks
- FPGAベースのプロセッサ、イーサネットコア
- ネットワークアプリケーションのデザイン
- IPコアの選択
- IP Core プロテクション
- Security Core, AES, DES, SHA, MD5, RSA
- メモリコントローラ
- USB Core
- PCI Express Core
Design Optimizations
- build時間の改善
- toolによる最適化
- areaの最適化
- 電力の最適化
FPGA Design Bring-up and Debug
- 電源投入前のチェックポイント
- Configration のトラブルシューティング
- ChipScope
- FPGA Editor
Floorplannning and Timing closure
- Timing 制約
Thir party productivity tools
- Build Management and Continuous Integration