高性能,高信頼性システムを開発するための定石
ディジタル・ハードウェア設計の基礎と実践
小林 芳直 著
B5変型判 248ページ
定価3,080円(税込)
JAN9784789838603
2006年5月1日発行
大変恐縮ですが,こちらの商品は品切れ絶版となりました.
最近では,HDL(ハードウェア記述言語)で機能を記述し,論理合成ツールで回路を実現することで,効率良く設計を進めることができます.ただし,性能や回路規模,消費電力などについての要求仕様が厳しい場合には,回路を人手でチューンアップしなければならないときもあります.
本書では,ディジタル回路の「性能向上」に焦点を当てた設計手法を解説します.ここで言う性能とは,「高周波数のクロックで動作する回路」を意味します.信号遅延を抑えるために配線負荷を小さくする演算回路設計手法や乗算器の高速化を図るWallaceツリーによる設計手法などを説明します.また,高性能を維持しつつ,高い信頼性を確保できるステート・マシンの作りかたも解説します.
目次
第1章 HDLで回路設計してみよう!
1-1 "基本的なまちがい"のない回路ができ上がる
1-2 お互いの弱点をカバーしながら設計しよう
第2章 ディジタル回路の基本は論理圧縮
2-1 論理和と論理積
2-2 ブール代数を用いて論理圧縮する
2-3 ド・モルガンの定理
第3章 LSIを構成する"プリミティブ"をのぞいてみよう
3-1 いろいろなプリミティブがある
3-2 足し算をしてみよう
3-3 データを処理する回路いろいろ
3-4 安定した回路の設計はラッチの理解から
3-5 データ・セレクタ
3-6 アドレス・コンパレータ
3-7 ルックアヘッド・キャリ・ジェネレータ
3-8 演算のかなめ,数値演算ユニット
3-9 データを1けたずつ移動させるシフト・レジスタ
3-10 順序動作の基本はカウンタ
第4章 性能指向のステート・マシン設計
4-1 ステート・マシンとは
4-2 ステート・マシン設計の基本
4-3 ダイス・マシンを設計してみる
4-4 Chatプロセッサを設計してみる
4-5 無限ループからの脱出法
第5章 コンパクトで速い演算回路を設計するコツ
5-1 2進数の加減算のための基礎知識
5-2 論理圧縮して比較回路を簡単化
5-3 アダーの高速化技術を習得しよう
5-4 複数の加算を行うには
5-5 項積分を使って高速な回路を設計
5-6 「けた上げ先見」による回路の高速化
第6章 Wallaceツリーを用いたマルチプライヤの高速化
6-1 Wallaceツリーの作りかた
6-2 高度なビット・スライス・アダー
第7章 浮動小数点演算回路を極める
7-1 単精度浮動小数点数の構造を理解しよう
7-2 浮動小数点演算のための部品集め
7-3 浮動小数点数の積算を行う
7-4 浮動小数点数の加算を行う
7-5 減算は符号を最初に決めてから演算開始
7-6 専用回路で2乗演算を行う
7-7 浮動小数点の割り算を行う
Appendix 1 ハードウェア設計の極意 〜要求仕様から適切な回路を作れますか?〜
EEPROMの回路を作る
VHDLソースで確認する
Appendix 2 FPGA特有の高速演算回路設計法
ビット・スライス・アダーの高速化
ワンホット・ステート・マシンの監視回路を作る
Epilogue 演習問題の解答