VHDLによるディジタル回路入門

[表紙]VHDLによるディジタル回路入門

紙版発売

B5変形判/672ページ/CD1枚

定価4,378円(本体3,980円+税10%)

ISBN 4-7741-1252-6

ただいま弊社在庫はございません。

→学校・法人一括購入ご検討の皆様へ

書籍の概要

この本の概要

本書は,ハードウェア記述言語「VHDL」を用いたディジタル回路設計を学ぶための入門書です。ディジタル技術の概念に始まり,組み合わせ回路・順路回路,演算回路といった各種ディジタル回路の動作原理とその設計について,分かりやすく解説しています。

こんな方におすすめ

  • ディジタル回路設計を学びたい人

※現在改訂版が出版されておりますので、そちらをご覧ください。

『改訂版 VHDLによるディジタル回路入門』

目次

第1章 ディジタル情報

  • 1.1 アナログとディジタル
  • 1.2 2進数
    • 1.2.1 2進法における数値の表現
    • 1.2.2 2進−10進変換
    • 1.2.3 10進−2進変換
  • 1.3 2進数の演算
    • 1.3.1 加算
    • 1.3.2 減算
    • 1.3.3 補数による演算
    • 1.3.4 乗算
    • 1.3.5 除算
  • 1.4 8進数と16進数
    • 1.4.1 16進,8進→10進変換
    • 1.4.2 10進→16進,8進変換
    • 1.4.3 2進,8進,16進の相互の変換
  • 1.5 BCDコード
  • 1.6 誤りの検出
  • 1.7 Q&A
  • 1.8 演習問題

第2章 論理代数

  • 2.1 基本論理演算
    • 2.1.1 論理と命題
    • 2.1.2 ブール代数
    • 2.1.3 複合命題と論理演算
    • 2.1.4 論理積(AND)
    • 2.1.5 論理和(OR)
    • 2.1.6 論理否定(NOT)
  • 2.2 基本法則と定理
    • 2.2.1 ベン図
    • 2.2.2 ブール代数の基本法則
    • 2.2.3 ド・モルガンの定理
  • 2.3 論理式を求める
    • 2.3.1 真理値と真理値表
    • 2.3.2 加法標準形
    • 2.3.3 乗法標準形
  • 2.4 論理式の簡単化
    • 2.4.1 基本法則による簡単化
    • 2.4.2 カルノー図による簡単化
  • 2.5 Q&A
  • 2.6 演習問題

第3章 論理回路

  • 3.1 基本論理回路
    • 3.1.1 AND回路
    • 3.1.2 OR回路
    • 3.1.3 NOT回路
    • 3.1.4 NAND回路
    • 3.1.5 NOR回路
    • 3.1.6 バッファ回路
  • 3.2 回路構成
    • 3.2.1 組み合わせ回路と設計方法
    • 3.2.2 正論理と負論理
    • 3.2.3 正論理/負論理とAND/ORの関係
    • 3.2.4 ド・モルガンの定理による回路の変換
    • 3.2.5 ド・モルガンの定理によってすべての論理をNAND回路に変換
  • 3.3 Q&A
  • 3.4 演習問題

第4章 ハードウェア記述言語

  • 4.1 ハードウェア記述言語の概要
  • 4.2 基本論理回路のHDL化
    • 4.2.1 AND回路
    • 4.2.2 OR回路
    • 4.2.3 NAND回路
    • 4.2.4 NOR回路
    • 4.2.5 NOT回路
    • 4.2.6 BUF回路
  • 4.3 シミュレーション
    • 4.3.1 テストベンチの設定
    • 4.3.2 信号宣言
    • 4.3.3 コンポーネント宣言
    • 4.3.4 下層エンティティの呼び出し
    • 4.3.5 下層エンティティへの入力の波形定義
    • 4.3.6 2AND回路のシミュレーション結果
    • 4.3.7 その他の回路のシミュレーション結果
  • 4.4 論理合成
  • 4.5 Q&A
  • 4.6 演習問題

第5章 組み合わせ回路

  • 5.1 排他的論理和回路
    • 5.1.1 真理値表とカルノー図
    • 5.1.2 動作と回路記号
    • 5.1.3 EXOR回路のVHDL記述
  • 5.2 選択回路
    • 5.2.1 真理値表と論理式
    • 5.2.2 選択回路のVHDL記述
  • 5.3 比較回路
    • 5.3.1 真理値表とカルノー図
    • 5.3.2 比較回路のVHDL記述
    • 5.3.3 入力のバス幅を拡張した比較回路
    • 5.3.4 全比較回路および4ビット比較回路のVHDL記述
  • 5.4 エンコーダ
    • 5.4.1 10進−BCDエンコーダ
    • 5.4.2 問題を解決したエンコーダ
    • 5.4.3 10進−BCDエンコーダのシミュレーション
  • 5.5 デコーダ
    • 5.5.1 BCD−10進デコーダ
    • 5.5.2 BCD−10進デコーダのシミュレーション
  • 5.6 7セグメントデコーダの設計
    • 5.6.1 7セグメントの動作
    • 5.6.2 真理値表,カルノー図,論理式,回路図
    • 5.6.3 7セグメントデコーダのシミュレーション
  • 5.7 パリティ回路
    • 5.7.1 4ビットパリティジェネレータ
    • 5.7.2 5ビットパリティチェッカ
    • 5.7.3 4ビット偶数パリティジェネレータのシミュレーション
  • 5.8 Q&A
  • 5.9 演習問題

第6章 ディジタルIC

  • 6.1 ディジタル回路の製作
  • 6.2 ディジタルICの特性
    • 6.2.1 出力電圧
    • 6.2.2 入力電圧
    • 6.2.3 出力電流
    • 6.2.4 入力電流
  • 6.3 ファンイン,ファンアウト
    • 6.3.1 ファンイン
    • 6.3.2 ファンアウト
    • 6.3.3 ファンイン,ファンアウトから求める接続数
    • 6.3.4 シリーズが異なる場合
  • 6.4 伝搬遅延時間
    • 6.4.1 TTLとCMOS
    • 6.4.2 TTLの種類(シリーズ)
    • 6.4.3 CMOSの種類
    • 6.4.4 伝搬遅延時間
    • 6.4.5 伝搬遅延時間のVHDL記述
    • 6.4.6 慣性遅延と伝播遅延
  • 6.5 消費電力
  • 6.6 プルアップとプルダウン
    • 6.6.1 プルアップとプルアップ抵抗
    • 6.6.2 プルダウン
  • 6.7 出力形式
    • 6.7.1 トーテムポール出力
    • 6.7.2 トライステート出力
    • 6.7.3 トライステート出力やワイヤードロジックのVHDL記述
    • 6.7.4 bitとstd_logicの違い
    • 6.7.5 オープンコレクタ出力
    • 6.7.6 サスティンド・トライステート出力
  • 6.8 スパイク電流とバイパスコンデンサ
    • 6.8.1 スパイク電流
    • 6.8.2 バイパスコンデンサ
    • 6.8.3 連続ステッピングと分割ステッピング
  • 6.9 Q&A
  • 6.10 演習問題

第7章 フリップフロップ

  • 7.1 非同期型RSフリップフロップ
    • 7.1.1 動作と回路記号
    • 7.1.2 状態遷移表と特性方程式
    • 7.1.3 状態遷移図
    • 7.1.4 フリップフロップの初期状態
    • 7.1.5 NAND回路による非同期型RSフリップフロップ
    • 7.1.6 非同期型RSフリップフロップのVHDL記述
  • 7.2 非同期型Tフリップフロップ
    • 7.2.1 動作と回路記号
    • 7.2.2 状態遷移表,特性方程式,状態遷移図
    • 7.2.3 初期状態
    • 7.2.4 非同期型TフリップフロップのVHDL記述
  • 7.3 同期型RSフリップフロップ
    • 7.3.1 動作と回路記号
    • 7.3.2 状態遷移表,特性方程式,状態遷移図
    • 7.3.3 同期型RSフリップフロップのVHDL記述
  • 7.4 同期型Tフリップフロップ
    • 7.4.1 動作と回路記号
    • 7.4.2 状態遷移表,特性方程式,状態遷移図
    • 7.4.3 同期型TフリップフロップのVHDL記述
  • 7.5 同期型Dフリップフロップ
    • 7.5.1 動作と回路記号
    • 7.5.2 状態遷移表,特性方程式,状態遷移図
    • 7.5.3 同期型DフリップフロップVHDL記述
  • 7.6 同期型JKフリップフロップ
    • 7.6.1 動作と回路記号
    • 7.6.2 状態遷移表,特性方程式,状態遷移図
    • 7.6.3 同期型JKフリップフロップのVHDL記述
  • 7.7 特性方程式の応用
    • 7.7.1 同期型RSフリップフロップ
    • 7.7.2 同期型Tフリップフロップ
    • 7.7.3 同期型JKフリップフロップ
  • 7.8 非同期R+同期型Dフリップフロップ
    • 7.8.1 動作と回路記号
    • 7.8.2 状態遷移表
    • 7.8.3 非同期R+同期型DフリップフロップのVHDL記述
  • 7.9 非同期RS+同期型Dフリップフロップ
    • 7.9.1 動作と回路記号
    • 7.9.2 状態遷移表
    • 7.9.3 非同期RS+同期型DフリップフロップのVHDL記述
  • 7.10 非同期R+同期型JKフリップフロップ
  • 7.11 ラッチ回路
    • 7.11.1 動作と回路記号
    • 7.11.2 ラッチ回路のVHDL記述
  • 7.12 フリップフロップの伝搬遅延時間
    • 7.12.1 伝搬遅延時間が入ったフリップフロップのVHDL記述
  • 7.13 Q&A
  • 7.14 演習問題

第8章 順序回路

  • 8.1 レジスタ
    • 8.1.1 動作と回路記号
    • 8.1.2 レジスタのVHDL記述
    • 8.1.3 レジスタのVHDLによる階層設計
  • 8.2 シフトレジスタ
    • 8.2.1 動作と回路図
    • 8.2.2 シフトレジスタのVHDL記述
  • 8.3 非同期式カウンタ
    • 8.3.1 非同期式2n進カウンタ
    • 8.3.2 非同期式N進カウンタ
  • 8.4 同期式カウンタ
    • 8.4.1 同期式2n進カウンタ
    • 8.4.2 同期式N進カウンタ
  • 8.5 同期式回路の設計
    • 8.5.1 4進アップカウンタの設計
    • 8.5.2 JKフリップフロップによる4進アップカウンタの設計
    • 8.5.3 Dフリップフロップによる10進アップカウンタの設計
    • 8.5.4 JKフリップフロップによる10進アップカウンタの設計
  • 8.6 順序回路のリセット
    • 8.6.1 非同期リセット
    • 8.6.2 同期リセット
  • 8.7 最大クロック周波数
    • 8.7.1 ホールドタイムとセットアップタイム
    • 8.7.2 最大クロック周波数
  • 8.8 Q&A
  • 8.9 演習問題

第9章 演算回路

  • 9.1 基本演算回路
    • 9.1.1 半加算器
    • 9.1.2 全加算器
    • 9.1.3 半減算器
    • 9.1.4 全減算器
  • 9.2 加算回路
    • 9.2.1 全加算器を使用した加算回路
    • 9.2.2 加算回路の高速化
    • 9.2.3 演算速度の検証
    • 9.2.4 BCD加算回路
  • 9.3 全減算器を使用した減算回路
  • 9.4 補数を使用した加減算回路
  • 9.5 unsignedとsigned
  • 9.6 Q&A
  • 9.7 演習問題

第10章 同期式回路設計の工夫

  • 10.1 イネーブル付レジスタ
    • 10.1.1 イネーブル付フリップフロップ
    • 10.1.2 イネーブル付レジスタのVHDL記述
  • 10.2 イネーブル付シフトレジスタ
    • 10.2.1 シリアルイン・パラレルアウト・シフトレジスタ
    • 10.2.2 シリアルイン・パラレルアウト・シフトレジスタのVHDL記述
    • 10.2.3 パラレルイン・シリアルアウト・シフトレジスタ
    • 10.2.4 2段論理によるパラレルイン・シリアルアウト・シフトレジスタ
    • 10.2.5 パラレルイン・シリアルアウト・シフトレジスタのVHDL記述
  • 10.3 イネーブル付カウンタ
    • 10.3.1 「+1回路」とレジスタ
    • 10.3.2 イネーブル付カウンタのVHDL記述
  • 10.4 イネーブル付アップダウンカウンタ
    • 10.4.1 動作と構成
    • 10.4.2 イネーブル付アップダウンカウンタのVHDL記述
  • 10.5 ロード,イネーブル付アップダウンカウンタ
    • 10.5.1 動作と構成
    • 10.5.2 ロード,イネーブル付アップダウンカウンタのVHDL記述
  • 10.6 カウンタの縦続接続
    • 10.6.1 「RC」の追加
    • 10.6.2 回路記号と縦続接続
    • 10.6.3 100進カウンタのVHDL記述
    • 10.6.4 シミュレーション結果の確認
    • 10.6.5 256進カウンタのVHDL記述
  • 10.7 トラップ補正とテスト回路
    • 10.7.1 トラップ補正
    • 10.7.2 トラップ補正のVHDL記述
    • 10.7.3 テスト回路の追加
    • 10.7.4 テスト回路を考慮したVHDL記述
  • 10.8 入力信号の同期化
    • 10.8.1 非同期リセット信号
    • 10.8.2 同期リセット信号
    • 10.8.3 テストベンチからの信号
  • 10.9 入力信号の変化の検出
    • 10.9.1 動作と回路構成
    • 10.9.2 検出回路のVHDL記述
  • 10.10 出力信号のスパイク
    • 10.10.1 スパイク発生のメカニズム
    • 10.10.2 スパイクフリー設計
  • 10.11 Q&A
  • 10.12 演習問題

第11章 乗除算回路

  • 11.1 乗算回路
    • 11.1.1 回路構成
    • 11.1.2 乗算回路のVHDL記述
    • 11.1.3 シミュレーション結果の検証
    • 11.1.4 乗算演算子「*」による乗算回路のVHDL記述
  • 11.2 乗算回路の高速化
    • 11.2.1 アキュムレータロードの工夫
    • 11.2.2 乗数2ビットを同時処理
  • 11.3 除算回路
    • 11.3.1 回路構成
    • 11.3.2 除算回路のVHDL記述
  • 11.4 Q&A

付録A VHDLの構文定義

  • A.1 構文の概要
  • A.2 構文定義
  • A.3 和訳項目名の逆引き

付録B CD−ROMについて

  • B.1 CD−ROMの使用方法
  • B.2 論理シミュレータ「ModelSim」
    • B.2.1 インストール
    • B.2.2 アンインストール
  • B.3 論理合成ツール「LEONARDO spectrum」
    • B.3.1 インストール
    • B.3.2 アンインストール
  • B.4 ライセンス
    • B.4.1 ライセンスの取得
    • B.4.2 ライセンスの設定
  • B.5 本書掲載のVHDL記述について
  • B.6 本書掲載の論理合成結果について
  • B.7 回路シミュレータのチュートリアル(株式会社スピナカー・システムズ提供)
  • B.8 ムービーについて
  • B.9 Adobe Acrobat Reader 5.0

著者プロフィール

並木秀明(なみきひであき)

日本工学院八王子専門学校 ITスペシャリスト科教授。

ディジタル回路デザイン,ハードウェア記述言語,マイクロコンピュータなどのハードウェア系科目を担当。入職前は,プリンタ,テレビ局や新聞社向けなどの組込みシステムのハードウェア開発・設計に従事。

著書「よくわかるSystemCによるシステムデザイン入門」「改訂新版ディジタル回路とVerilogHDL」「改訂版VHDLによるディジタル回路入門」「Excelではじめるディジタル信号処理」他

著書