とね日記

理数系ネタ、パソコン、フランス語の話が中心。
量子テレポーテーションや超弦理論の理解を目指して勉強を続けています!

改訂版 デジタル回路の「しくみ」と「基本」:小峯龍男

2012年10月10日 22時27分01秒 | 電子工学、工学系
改訂版 デジタル回路の「しくみ」と「基本」:小峯龍男

本書はTINAという世界標準Spice3準拠の回路設計&シミュレータソフトを使いながらデジタル回路の基礎を学ぶための本だ。本書のためにカスタマイズされた日本語版TINAは本に付属するCDからインストールして使うことができる。

TINAのオフィシャル・サイト(英語)
http://www.tina.com/English/tina/

日本語版TINAとサンプル回路のダウンロード(TI Japanサイト内)
http://www.tij.co.jp/tool/jp/tina-ti

日本の代理店(TINAのページ - 製品の解説がわかりやすい)
http://www.ilink.co.jp/tina/index.html


最近は電子機器を使うときにデジタルかアナログかをほとんど意識しなくなっている。アナログテレビも使われなくなり、身の回りにあるのはデジタル機器ばかりだ。炊飯器や洗濯機の本体の回路はアナログだが、制御にはデジタルのマイコンが使われている。100パーセントアナログ回路で作られているのはラジオや扇風機くらいだろうか。

「これはデジタル機器なんだよな。」とか思いながらスマートフォンをいじっている人はほとんどいないだろう。デジタルが当たり前になってしまったから意識にすらのぼらない。特にiPhoneが大ヒットしたのは洗練されたデザインもさることながら、デジタルでありながら抜群になめらかなアナログ感覚の操作性にあったのだと思う。

とはいってもデジタル機器が出始めた1970年代、世間一般の人がアナログとデジタルを正しく区別してとらえていたわけではない。せいぜい「針がついている時計はアナログで、数字がチカチカと切り替わる時計がデジタルだ。」とか「レコードはアナログで、CDはデジタルだ。」程度の理解だったと思う。


改訂版 電子回路の「しくみ」と「基本」 :小峯龍男」でアナログ回路を学んだ後、本書「改訂版 デジタル回路の「しくみ」と「基本」:小峯龍男」でデジタル回路を学んでみた。どちらも今年の8月に改訂版として出たばかり。入門者向けの本として特にオススメである。


詳細は後述する目次情報を見ていただきたいが、本書ではまず通常アナログ回路で使われる電子部品を使ってAND回路やOR回路をはじめとする論理回路を構成できることを学ぶ。

そしてこれらの論理回路がICにパッケージされ、デジタル回路を構成する基本部品になること、デジタル回路の基本であるフリップフロップ回路、パルス回路、カウンタ回路、シフト回路などをサンプルを実行しながら順に学んでいく。

ICやLSIには膨大な数の電子部品が入っているということは知っていても、電子部品の組み合わせはほとんど無限だ。自分の作りたい回路にはどのようなICが必要で、どのように接続すればよいかはさっぱりわからない。

ICやLSIにどのような機能のものがあり、どのような単位で製品としてパッケージされているかということがよく理解できたのが、僕にとってのいちばんの収穫だった。

そして、本書では最終的に「簡単な電卓」を作る方法に到達するのだ。「電卓を作りたいという妄想」にとらわれている僕には、入門者向けとはいえとりあえずうってつけの本だった。コンピュータ(マイコン)が動作するしくみについても簡単に触れられている。

「簡単な電卓を作る」ための章の回路サンプルから、いくつか紹介してみよう。難しく見えるかもしれないが、基礎から順を追って解説されるので心配無用だ。

10キー入力を2進数に変換するエンコーダ回路と
2進数を1桁の10進数にして表示するデコーダ回路
「7」を入力して表示させたところ
(クリックで拡大)


上記のデコーダ回路の詳細(クリックで拡大)
2進数の入力「0101」から10進数の「5」を出力


2進数4ビット全加算器(クリックで拡大)



動作原理を学ぶための簡単なものなので、本書で解説される電卓では10進数1桁通しの(繰り上がりのない)加算と減算しかできない。大学の工学部で学ぶデジタル回路の授業や、たいていの教科書もこのレベルで終わるのが普通だ。

実用的な「普通の電卓」にするためには、少なくとも次のような機能を加える必要があるだろう。

- 桁数を8桁にする。
- 負数の計算ができるようにする。
- 乗算と除算ができるようにする。
- 小数の計算(浮動小数点演算)ができるようにする。
- +、-、×、÷、=、小数点、符号反転(±)AC、Cキーなどを実装して通常の電卓のキー入力方式に従った操作ができるようにする。

さらに欲を言えば

- 指数形式の入力、計算ができるようにする。
- できればメモリー機能もほしい。

桁数を増やしたり、負数の計算機能を追加するのはそれほど難しいことではない。ただ、乗算と除算、浮動小数点演算はいきなり難しくなるのだ。これらを論理回路でどのように実現すればよいのか?

そのためには「電卓技術教科書」が欲しいのだが、ほとんど入手不可能で国会図書館で閲覧できるくらいだ。調べてみたところ、格好の本が見つかった。乗算、除算、浮動小数点演算のほか、初等超越関数のロジックも解説されている!アマゾンのレビューの評判もすこぶるよい。初等超越関数とは三角関数や指数、対数関数などのことだ。つまり、理屈の上では関数電卓も作れるようになる。(参考記事:「神様の計算機 (CASIO fx-2、1972年)」)

1964年に発売された世界初のトランジスタ卓上電卓(参照記事)は重量が25Kgもあったのだが四則演算しかできなかった。もし関数電卓をワイヤードロジック、つまりICやLSIを使わずにトランジスタやダイオードで作ったらいったいどのくらいの重量になるのだろう?部品点数はどれくらいになるのだろうか?

ディジタル数値演算回路の実用設計―四則演算、初等超越関数、浮動小数点演算の作りかた
サンプルページ(除算回路)


乗算回路や除算回路はネット上でも学ぶことができる。次のようなページを参考にするとよいだろう。

電子計算機の論理回路(素晴らしいサイトです。)
http://www.geocities.jp/hiroyuki0620785/intercomp/complogic.htm

ディジタル回路 (3年必修)
http://www.yonago-k.ac.jp/denki/lab/nitta/lecture/E3_digital/

源内CAD支援コンテンツ
http://tamuro.gooside.com/index.html

FPGAを用いた数値演算アルゴリズムとそのRTL記述ソースコード
http://signal-process-logic.com/jp/code_book/codes/toc/toc.shtml

乗算、除算回路を含まない本書で解説されるレベルまででよければ、信州大学工学部の井澤先生によるWeb教材がお勧めだ。このサイトでは電卓のキー入力に従った計算の制御方法も説明されている。またこのページは必見。Javaアプレットによる電卓回路で計算過程が試せるように作りこまれている。トップページはこちらである。

論理回路1
http://laputa.cs.shinshu-u.ac.jp/~yizawa/logic_textbook.html

論理回路2
http://laputa.cs.shinshu-u.ac.jp/~yizawa/logic2/


改訂版 デジタル回路の「しくみ」と「基本」:小峯龍男」のサポートページ
http://gihyo.jp/book/2012/978-4-7741-5147-2/support


本書はデジタル回路の学習用だが、同じTINA 9を使った姉妹本として「アナログ回路」や「シーケンス制御回路」を学べる本も出ている。「アナログ回路」のほうも本書と同じく今年の8月に出版されたばかりだ。

改訂版 電子回路の「しくみ」と「基本」:小峯龍男
改訂版 デジタル回路の「しくみ」と「基本」:小峯龍男
シーケンス制御回路の「しくみ」と「基本」:小峯龍男
  


関連記事:

電卓を作りたいという妄想
https://blog.goo.ne.jp/ktonegaw/e/01cf6bc6669bf0956a792bce292f97f1

改訂版 電子回路の「しくみ」と「基本」 :小峯龍男
https://blog.goo.ne.jp/ktonegaw/e/63d78b0fbb911e94b4b1385edbcbdfb9


応援クリックをお願いします!このブログのランキングはこれらのサイトで確認できます。
にほんブログ村 科学ブログ 物理学へ 人気ブログランキングへ 




改訂版 デジタル回路の「しくみ」と「基本」:小峯龍男


目次

デジタル回路を極めたい貴方に
本書の上手な読み方・使い方
本書の説明でよく使うデジタル回路の基本用語説明

第1章:TINAとサンプル回路の動かし方
- 回路を実際に動かして学べる付属ソフト「TINA」の特徴
- 本書付属CD-ROMコンテンツ収録内容
- 収録「TINA」の機能制限と動作環境
- TINAのインストール
- サンプル回路の読み込みとシミュレーションの実行

第2章:デジタル回路の基本をマスター
- デジタルとアナログ
- 論理と論理回路
- 半導体部品を使って論理回路を作る
- デジタルICを使って論理回路(ゲート回路)を作る
- デジタルICの基礎知識

第3章:ロジック回路をマスターしよう
- 製品判定装置のロジック回路
- 多数決回路で、組み合わせの「定石」をマスターする
- 動作を見やすくするためのロジック回路の表し方
- よく使うロジック回路をいろんな手法で組んでみよう

第4章:フリップフロップで入力信号を記憶する
- デジタル信号を記憶するにはフリップフロップが必要
- 瞬間の信号を記憶するRSフリップフロップ
- RSフリップフロップで組むシーケンス回路
- RSフリップフロップのここに注意
- インタロック回路とJKフリップフロップ
- 1つの信号で交互にオン・オフさせるTフリップフロップ
- データの同期をとるDフリップフロップ

第5章:マルチバイブレータでパルス信号を作る
- パルス信号とデジタル信号
- 無安定マルチバイブレータで連続パルスを作る
- パルス信号をオシロスコープで観察する
- パルス発振のオン・オフができるように改良してみる
- シュミットトリガICで作るパルス発振回路
- タイマ出力を作る単安定マルチバイブレータ
- 専用ICで作る単安定マルチバイブレータ
- パルスを簡単に作るタイマIC「555」

第6章:デジタルで数を数えるカウンタ回路
- 製品を指定個数ごとにまとめるオリジナルカウンタ
- 5進や10進などのカウンタを組んでみる
- カウンタICでパルスを2進数で数える
- カウンタICでタイマを作ってみよう
- 入出力信号の遅れを改善した同期式カウンタ

第7章:データを移動させるシフトレジスタ
- データを一時保存するレジスタ
- データを順送りに受け渡しするシフトレジスタ
- 1本の信号ラインで多ビットデータを受け渡しする
- いろいろな機能が付加されたシフトレジスタIC
- リングカウンタで作る電子ルーレット
- リングカウンタを応用して流れるウィンカーを作る
- リングカウンタでステッピングモータを回転させる

第8章:小さなCPU・電卓を作ってみよう
- コンピュータのしくみを考える
- 入力装置と出力装置
- 演算装置(ALU)のコンパレータ機能
- 演算装置(ALU)の2進数値の演算機能
- いよいよ電卓を作る

第9章:デジタル回路の実装ヒント集
- デジタルICの取り扱い方
- デジタル回路への電源供給
- デジタル回路の電源装置
- 電子回路実装の常識
- 周辺回路のヒント集
- 連続的な信号をデジタル信号に変えるA-D変換器


付録:電子回路シミュレータ「TINA」の使い方
- TINAの画面各部の名称と役割
- 回路図作成の基本操作
- 回路の実験
- バーチャル測定器を使う
- 回路を自動設計する
- プリント配線基板を設計できる製品版のPCB機能
- 電子回路シミュレータの約束事

用語索引
コメント (6)    この記事についてブログを書く
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする
« さよなら僕の夏: レイ・ブラ... | トップ | iPhone 5用の充電ケーブルが... »

6 コメント

コメント日が  古い順  |   新しい順
毎度のゴミっすけど御参考まで (noboshemon)
2012-10-10 22:50:52
> デジタル数値演算回路の実用設計

達人の書いたすげー本です。
ただし。。。あちきは 5 年前に挑戦して
3 章までで give up でありました ^_^;

でも、同じ頃出たこちらの本は一応読めて、
ieee 754 を理解した気になれました。

"ディジタル・ハードウエア設計の基礎と実践"
http://www.cqpub.co.jp/hanbai/books/38/38601.htm
http://noboshemon.asablo.jp/blog/2007/05/21/1522546




返信する
noboshemonさんへ (とね)
2012-10-10 23:10:52
お久しぶりです!
さっそく良さげな本を紹介いただき、ありがとうございました。
3章まででGive upと書かれていますが、しっかり正誤表までお作りになっているではありませんか。さすがです。
おおいに参考にさせていただきます。
返信する
とねさんへ (noboshemon)
2012-10-10 23:43:11
> しっかり正誤表まで

ちゃいます。
give up したのとは、別の本 (ご紹介した方) のメモっす。
そんなてーした人間ではありませんです ^_^;
返信する
noboshemonさんへ (とね)
2012-10-10 23:52:20
なるほど。別の本のメモなわけですね。了解しました。
返信する
とねさんへ (noboshemon)
2012-10-11 15:52:55
> 別の本のメモなわけですね

重複をいとわずに正確に書けば、

とねさんの記事で引用されている
"デジタル数値演算回路の実用設計"
は、途中で give up しました。

ご紹介した、
"ディジタル・ハードウエア設計の基礎と実践"
については、読めました。そのメモです。
返信する
noboshemonさんへ (とね)
2012-10-11 17:57:26
Give upしてしまったのは、僕が紹介したほうの本でしたか!
すでに注文してしまったので、本が届いてから内容を確認してみます。
返信する

コメントを投稿

ブログ作成者から承認されるまでコメントは反映されません。

電子工学、工学系」カテゴリの最新記事