Last Update 2003/10/14

ハードウェア記述言語(Altera-HDL)を使いながら学ぶ
パソコンによる
プログラマブル・ロジックの設計

トランジスタ技術編集部 編
B5変型判 256ページ
3.5"1.44M FD×2枚付き
定価3,418円(税込)
JAN9784789832175
1995年5月31日発行
[絶版2002.4.30] パソコンによるプログラマブル・ロジックの設計
大変恐縮ですが,こちらの商品は品切れ絶版となりました.

 本書にはAHDLコンパイラFirstStep(CQ版)が付属しており,AHDLによるロジック回路設計を使いながら学ぶことができます.
 FirstStepは, 米国Altera社のプログラマブル・ロジック開発システムMAX+PLUSII(Version 4.01)の機能を制限したものです.Windows 3.1以上が必要です.

目次

第1部 インストールおよび設計作業の概要
 FirstStep(CQ版)の動作環境
 FirstStepのインストール
 日本語マニュアル・ファイルのインストール
 設計作業の概要
 設計入力
 ABEL/PALASM 設計ファイルの変換
 コンパイル
 デバイスのプログラミング

第2部 AHDLマニュアル
 表記規則

第1章 はじめに
 1.1 AHDL デザイン・エントリ
  1.1.1 AHDLはどのように動くのか?
 1.2 テキスト・デザイン・ファイル
  1.2.1 テキスト・デザイン・ファイル・セクション
  1.2.2 プロジェクト階層のファイル
  1.2.3 インクルード・ファイル
 1.3 AHDLの使い方
 1.4 AHDLのゴールデン・ルール

第2章 AHDLの使い方
 2.1 はじめに
  2.1.1 数字の使用
  2.1.2 定数の使用
 2.2 組み合わせ論理回路
  2.2.1 ブール表現とブール式の書き方
  2.2.2 ノードの宣言
  2.2.3 グループの定義
  2.2.4 条件判断ロジックの実装
  2.2.5 デコーダの作成
  2.2.6 変数のデフォルト値の使用
  2.2.7 アクティブlowのロジックの実装
  2.2.8 双方向ピンの実装
 2.3 順序論理回路
  2.3.1 レジスタの宣言
  2.3.2 レジスタ付き出力の宣言
  2.3.3 カウンタの作成
 2.4 ステート・マシン
  2.4.1 ステート・マシンの実装
  2.4.2 クロック,リセット,クロック・イネーブル信号のセット
  2.4.3 状態の出力値の指定
  2.4.4 ステート・トランジションの指定
  2.4.5 ステート・マシンのビットと値の割り当て
  2.4.6 同期出力のステート・マシン
  2.4.7 非同期出力のステート・マシン
  2.4.8 禁止状態からの回復
 2.5 階層的なプロジェクトの実装
  2.5.1 Altera MAX+PLUS IIマクロファンクションの使い方
  2.5.2 カスタム・マクロの作り方と使い方
 2.6 フィットのコントロール
  2.6.1 リソースの自動割り当て
  2.6.2 リソースのバック・アノテートとデバイスへの割り当て
  2.6.3 プロジェクトを単一のデバイスにフィットさせるとき
  2.6.4 プロジェクトを複数のデバイスにフィットさせるとき
 2.7 シミュレーションのためのプロジェクトの結合
 2.8 論理合成のコントロール
  2.8.1 論理合成スタイルとロジック・オプションの指定
  2.8.2 LCELLとSOFTプリミティブの実装
  2.8.3 変数のデフォルト値
  2.8.4 ステート・マシン・ビットと状態割り当て

第3章 構文要素
 3.1 予約語
 3.2 記号
 3.3 クォーテーション付き/クォーテーション無しの名前
 3.4 グループ
  3.4.1 グループの表記法
  3.4.2 グループの範囲とサブレンジ
 3.5 数字
 3.6 ブール表現
  3.6.1 論理演算子
  3.6.2 NOTを使った表現
  3.6.3 AND,NAND,OR,XOR,XNORを使った表現
  3.6.4 算術演算子
  3.6.5 比較演算子
  3.6.6 ブール式の優先順位
 3.7 プリミティブ
  3.7.1 バッファ・プリミティブ
  3.7.2 フリップフロップとラッチ・プリミティブ
  3.7.3 プリミティブとポートの相互接続
 3.8 マクロファンクション
 3.9 ポート
  3.9.1 カレント・ファイル中のポート
  3.9.2 インスタンスのポート
 3.10 リソースとデバイスの割り当て
  3.10.1 ピン,ロジック・セル,チップの割り当て
  3.10.2 クリークの割り当て
  3.10.3 デバイスの割り当て
  3.10.4 ロジック・オプションの割り当て
  3.10.5 割り当て作業のガイドライン
  3.10.6 論理合成スタイルとロジック・オプションの規則

第4章 設計の構成
 4.1 概要
 4.2 Title 文
 4.3 Constant 文
 4.4 ファンクション・プロトタイプ文
 4.5 Include 文
 4.6 Option 文
 4.7 デザイン・セクション
  4.7.1 デバイス指定
  4.7.2 クリーク割り当て文
  4.7.3 ピン接続文
  4.7.4 サブデザイン・セクション
  4.7.5 変数セクション
  4.7.6 ノード宣言
  4.7.7 レジスタ宣言
  4.7.8 ステート・マシン宣言
  4.7.9 マシン・エイリアス宣言
 4.8 ロジック・セクション
  4.8.1 ブール式
  4.8.2 ブール制御式
  4.8.3 Case 文
  4.8.4 Default 文
  4.8.5 If 文
  4.8.6 マクロファンクションまたはプリミティブのインライン参照
  4.8.7 真理値表文

第5章 文法
 5.1 Title 文
 5.2 Constant 文
 5.3 ファンクション・プロトタイプ文
 5.4 Include 文
 5.5 Option 文
 5.6 デザイン・セクション
  5.6.1 デバイス指定
  5.6.2 リソース割り当て文
  5.6.3 クリーク割り当て文
  5.6.4 Connected_pins 文
 5.7 サブデザイン・セクション
 5.8 変数セクション
  5.8.1 ステート・マシン宣言
  5.8.2 マシン・エイリアス宣言
 5.9 ロジック・セクション
  5.9.1 ブール式
  5.9.2 ブール制御式
  5.9.3 Case 文
  5.9.4 Default 文
  5.9.5 If 文
  5.9.6 マクロファンクションまたはプリミティブのインライン参照
  5.9.7 真理値表文
 5.10 ポート
 5.11 グループ
 5.12 レキシカル構文要素
 5.13 文法グループとリスト
 5.14 AHDLの主な構成

第6章 スタイル・ガイド
 6.1 一般的なガイドライン
 6.2 空白
 6.3 コメントと文章
 6.4 名前の付け方に関する規則
 6.5 インデントのガイドライン
  6.5.1 サブデザインとロジック・セクション
  6.5.2 If 文
  6.5.3 Case 文
  6.5.4 真理値表
  6.5.5 変数とステート・マシンの宣言

第7章 はかの言語のユーザへの注意
 7.1 概要
 7.2 PALASM2ユーザへの注意
  7.2.1 例
  7.2.2 変換情報
  7.2.3 落し穴
  7.2.4 アクティブlowの仕様
 7.3 ABELユーザへの注意
  7.3.1 例
  7.3.2 変換情報
  7.3.3 落し穴
  7.3.4 アクティブlowの仕様

第3部 実際の設計例
 First Step について
 EPM 7032 について
 設計の手順
 言語入力か論理式入力か
 例1 バイナリ・カウンタ
 例2 DRAMコントローラ