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

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

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

定価(本体4,300円+税)

ISBN 4-7741-2890-2

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

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

書籍の概要

この本の概要

本書は,ディジタル回路と回路設計のハードウェア記述言語VHDLを基礎から学んでいきます。ディジタル回路の概念から組み合わせ回路・順序回路・演算回路の動作原理・設計を複雑な計算を用いることなく解説し,ハードウェア記述言語VHDLの書き方を基礎から解説しています。ディジタル回路をはじめて学ぶ方,VHDLをはじめて学ぶ方に最適な入門書です。

付録CD-ROMには本書で使用したソースプログラム,論理合成結果のPDFを収録しています。また,回路シミュレータや論理合成ツールの入手方法と使用方法についてのマニュアルも収録しています。

こんな方におすすめ

  • 学校や企業でディジタル回路を初めて学ぶ方
  • 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 構文定義

著者プロフィール

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

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

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

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

著書