第1章 ディジタル回路設計の全体的な流れ HDLによる設計の概要と本書の構成 9 |
1-1 本書のねらい 9 |
1-2 現在のディジタル回路の設計現場では 10 |
1-3 回路設計作業の全体的な流れ 12 |
1-4 ディジタル回路設計での注意点あれこれ 17 |
COLUMN 用語解説 14 |
第2章 単独モジュールのRTL設計法 CRC計算回路と簡易CPUを例にして 20 |
2-1 例題としてとりあげるテーマ 20 |
2-2 回路の動作を固める 23 |
2-3 クロックの概念を入れてRTLへ変換する 28 |
2-4 同時代入をしてハードウェア向けのRTLに改善する 34 |
2-5 同時代入を導入する具体的な方法 37 |
COLUMN 「データ・バス+コントローラ」モデルとEFSMモデル 39 |
COLUMN ソフトウェア処理とハードウェア処理の違い 42 |
第3章 VHDLによるRTL記述法と回路との対応づけ RTL記述の注意点と回路との対応 48 |
3-1 VHDLでのRTL記述のやりかた 48 |
3-2 RTL記述と回路との対応をつかむ 55 |
COLUMN レジスタのリセットが要注意 57 |
第4章 モジュールのインターフェース設計法 データをやりとりするための方法 65 |
4-1 モジュール構成の基本的な方法 65 |
4-2 VHDL上でモジュールを接続する方法 67 |
4-3 モジュール間のデータの流れを調節する 70 |
4-4 モジュール間の交信プロトコル設計 74 |
第5章 インターフェース部に誤動作防止の工夫を加える ハザード,セットアップ/ホールド・タイム違反,クリティカル・レースへの対策 81 |
5-1 回路誤動作のおもな原因 81 |
5-2 回路のどこに誤動作対策をすべきか 82 |
5-3 具体的なハザード対策法 85 |
5-4 非同期入力信号による誤動作を防止する 94 |
5-5 誤動作防止のための他の注意点あれこれ 96 |
第6章 回路性能は何によって決まるか 動作速度と回路規模と消費電力に関する考察 99 |
6-1 回路性能を決める要素 99 |
6-2 回路性能改善をCAD任せにしない 103 |
第7章 処理をハードウェア向けに直して回路性能を向上させる クロック数の削減やパイプライン化による高速化の手法 106 |
7-1 1クロックあたりの処理を増やして回路性能を向上させる 106 |
7-2 処理のパイプライン化によって回路性能を向上させる 115 |
第8章 回路のブロック図上で性能を向上させる 回路規模の縮小,動作周波数の向上,消費電力の低減に向けて 119 |
8-1 RTLで回路規模を縮小する方法 119 |
8-2 RTLで回路の動作周波数を上げる方法 131 |
8-3 RTLで回路の消費電力を下げる方法 137 |
第9章 個々の部品の最適化 ゲート・レベルで最適化する方法 145 |
9-1 最適化する箇所は演算回路とステート・アサイン 145 |
9-2 演算回路を作る一般的な手順 145 |
9-3 演算回路の設計で使われる基本アイデア 148 |
9-4 小中規模の演算回路を機械的に作る方法 155 |
9-5 代表的なステート・アサインとその選択 162 |
第10章 ワンチップ・マイコンを作る PIC16F84相当の機能と仕様を実現する 168 |
10-1 作成するCPUの仕様 168 |
10-2 CQPICの内部動作を検討する 170 |
10-3 CQPICのRTLを記述する 175 |
Appendix A FPGA用無償EDAツールの入手方法 ツールを触って回路設計を覚えよう 179 |
Appendix B HDL対照表 代表的なHDLの記述法を比較する 182 |
参考文献 188 |
索引 189 |
本書付属CD-ROMの内容と使いかた 191 |
第1章 ディジタル回路設計の全体的な流れ HDLによる設計の概要と本書の構成 9 |
1-1 本書のねらい 9 |
1-2 現在のディジタル回路の設計現場では 10 |
1-3 回路設計作業の全体的な流れ 12 |
1-4 ディジタル回路設計での注意点あれこれ 17 |
COLUMN 用語解説 14 |