ハードウェア記述言語でPLD/FPGA/ASICを開発する
ABELによるASICの設計技法
小林 芳直/三上 廉司 共著
B5変型判 224ページ
3.5"1.44MB FD 2枚付き
定価4,058円(税込)
JAN9784789830843
1996年7月10日発行
大変恐縮ですが,こちらの商品は品切れ絶版となりました.
ディジタル回路の設計にハードウェア記述言語(Hardware Description Language)を使うことが一般的になってきています.それはソフトウェアを開発するのと同じように,ハードウェアの機能仕様を高級論理式,真理値表,状態遷移表などを使って記述していくことによって,PLD(Programmable Logic Device)やASIC(Application Specific IC)の開発にも応用することができます.
本書では,ハードウェア記述言語としての定評のあるABEL(米国DATA I / O社)の教育バージョンABELEDU)をIBM PC互換機のパーソナル・コンピュータ上で使いながら,実際の開発技法と実例を取得することができます.また,ABELの言語リファレンスとしても活用できます.
目次
第1部 ABEL - HDLによるハードウェア設計
第1章 ABELの紹介
1.1 ABELを使った論理入力
・ 論理式
・ 真理値表
・ ステート・ダイアグラム
1.2 シミュレーションと論理圧縮
・ テスト・ベクタによるシミュレーション
・ クリチカル・パスと動作速度
・ 実装上の注意
第2章 コンビネーション回路
2.1 回路とその機能
・ 基本的なゲート
・ XORゲート
・ PLA
2.2 ブール代数
・ ブール論理式
・ ブール代数の公式
・ ド・モルガンの定理
・ シャノンの定理
・ 積項
・ 論理和
・ 標準積和型
2.3 ブール代数をABELで使う
第3章 論理の最小化
3.1 2段論理の最小化
・ 最大項
・ 最小和
・ 最小和の決めかた
・ そのほかの表現法
・ リード・マラー論理式
・ ビット・パーティショニング
・ ミニマム・カバー
・ エッセンシャル手項
・ クワイン・マクラスキー法
3.2 1セット,Oセット,DCセット
3.3 多変数を出力する回路の論理圧縮
3.4 多段論理の最適化
・ ファクタリング
3.5 XORゲートの論理圧縮
・ リード・マラー型論理式
・ XORゲートを含む回路の最適化
・ XORゲートを使ったファクタリング
第4章 順序回路
4.1 同期式順序回路
・ 同期式ラッチの種類
・ ラッチのエミュレーション
・ ステート・マシンの設計
・ ミーリィ・マシンとムーア・マシン
4.2 ステート・マシンの論理圧縮
・ ステート・マシンのステート定義
・ ステート定義の奥義
4.3 メタステービル現象
・ イントリンシック・ハザード
・ 動作速度の限界
・ 入力ラッチの効用
4.4 非同期式回路
・ ハザード
第5章 ABELの文法
5.1 概説
5.2 ABELの論理式
5.3 真理値表
・ 真理値表を使ったステート・マシンの設計
・ ステート・ダイアグラム
第6章 TTLの機能
6.1 バッファ
6.2 ラッチ
・ 8ビット・トランスペアレント・ラッチ 74373
・ 74259 アドレッサブル・ラッチ
6.3 レジスタ
・ 8ビットDタイプ・ラッチ 74374
6.4 シフトレジスタ
6.5 マルチレクサ
6.6 デマルプレクサ
第7章 カウンタ
7.1 Tラッチを使ったカウンタ
・ ルックアヘッド・カウンタ
7.2 Dラッチのカウンタ
・ カウンタの高級論理式
7.3 ロードできるカウンタ
7.4 カウンタのリセット
7.5 グレート・ポラリティ
7.6 SRラッチのカウンタ
7.7 アップ・カウンタとダウン・カウンタ
7.8 可変長カウンタ
7.9 カウンタ・チェイン
・ @carryによるカウンタの分割
・ キャリ・ルックアヘッド
7.10 ウェーブ・ジェネレータ
第8章 デコーダとコンパレータ
8.1 アドレス・デコーダ
8.2 コンパレータ
・ 一致比較回路
・ @carryを使った大規模なコンパレータ
・ キャリ・ルックアヘッドを使った大規模なコンパレータ
・ 大小比較回路
第9章 算術演算
9.1 パリティ・チェッカ
9.2 アダー
9.3 アダーの高級論理式
9.4 キャリ・ルックアヘッド
9.5 アダー・チェイン
・ @carryを使ったアダー・チェイン
9.6 引き算器
9.7 フィボナッチ数列発生器
9.8 積算器
・ 8×8遂次積算器
第10章 コード・コンバータ
10.1 7セグメント・デコーダ
10.2 グレイ・コード・コンバータ
10.3 CRC回路
・ CRC _ CCITTの標準
・ パラレルCRCジェネレータ
第11章 ジョンソン・カウンタ
11.1 ストップ・モーション
11.2 ステート・マシンのネスティング
11.3 ステート・マシンのトリミング
11.4 ステート・マシンのオーバラップ・オペレーション(1)
11.5 ステート・マシンのオーバラップ・オペレーション(2)
11.6 ジョンソン・カウンタのマイナ・ループ
第12章 LFSR
12.1 LFSRは何に使えるのか
12.2 LFSRの周期
12.3 1/8000プリスケーラの設計
・ LFSRのマイナ・ループとトラップ回路
第2部 ABEL - HDLの文法
第13章 ハードウェア記述言語
13.1 構造記述(ネットリスト)表現
13.2 機能記述表現
13.3 機能記述と構造記述の関係
13.4 合成とコンパイレーション
13.5 シミュレーションと設計自動化
13.6 言語習得のヒント
第14章 ABEL - HDLの基礎と構造
14.1 pin - to - pin記述と詳細記述
14.2 ABEL - HDL最小記述
14.3 ABELのモジュール構造
・ 定義部の要素
・ 仕様記述部の要素
・ テスト・ベクタ記述部
14.4 ABEL - EDUの処理系
・ 他のデバイス・サポートに関して
・ サポート・デバイス
第15章 宣言と識別子
15.1 宣言
・ デバイス宣言
・ PIN宣言
・ ノード
・ 信号属性
15.2 文字と変数
15.3 数と定数
・ 数字
・ 特別な定数
15.4 セット
・ セット・インデックス
15.5 ブロック
・ 論理式記述でのブロックの使用
15.6 マクロ
・ マクロによる文字代入
・ マクロによる関数定義
第16章 式と演算子
16.1 割り当て演算子
16.2 論理演算子
16.3 算術演算子
16.4 関係演算子
16.5 演算子の優先順位
16.6 when〜then〜else文
16.7 セット演算
・ セットと数値
・ セットと演算子
・ セット演算の規則
・ セットと型
・ @carryディレクティブ
第17章 真理値表
17.1 真理値表の型とテンプレート
17.2 ドント・ケア
17.3 レジスタ割り当て
17.4 レジスタ/組み合わせ混在
第18章 ステート・ダイアグラム
18.1 状態割り当てと宣言
・ レジスタと遷移条件の宣言
18.2 状態遷移路と遷移条件記述
18.3 制御出力
18.4 with文法
18.5 シンボリック・ステート・マシン
第19章 ハードウェアの詳細記述法
19.1 pin - to - pin信号属性
・ pin - to - pin記述で使用する属性
19.2 pin - to - pinドット拡張子
19.3 ハードウェア詳細記述属性
・ ハードウェア詳細記述で使用する属性
19.4 ハードウェア詳細ドット拡張子
19.5 アクティブ・レベル
・ アクティブ“L”記述
・ 極性制御記述
・ istype文による極性制御
・ ドント・ケアの条件設定
19.6 ノード
19.7 中間変数
19.8 イクスクルーシブ・オア
Appendix A ABEL - EDUの使い方
A.1 ABEL - EDUの走行環境
A.2 インストールの方法
A.3 起動と操作の方法
A.4 デバイスの指定と書き込み
A.5 製品版と相違
A.6 他のデバイス・サポートに関して
・ サポート・デバイス
A.7 重要な情報など
Appendix B 製品版のABELについて
B.1 製品群と走行環境
B.2 文法の互換性
B.3 各製品の機能と相違に関して
・ ABEL - 6
・ SYNARIO
・ Super ABEL
Appendix C ロジック・ダイアグラム
・ P16L8
・ P16H8
・ P16P8
・ P16R4
・ P16R6
・ P16R8
・ P20X8
・ E0320
・ P18CV8