2011年11月27日日曜日

論理回路基礎(10) RS-FF素子

今日ぐらいからちょっと理解が難しくなっていくと思います。
RS-FF(フリップフロップ)素子です。
RS-latchとも言いますね。

何する素子かっていうと、値を保持する素子です。
メモリーの素になる物だと思っておけばいいです。

・回路記号

箱です。フリップフロップは全部箱です。
フリップフロップに限らず。
素子レベルで物を考えずに、とりあえず回路図描くときなんかは箱で描きます。

・真理値表

SRQQbar
00保持保持
0101
1010
11ZZ
さて、見慣れない単語が出てきました。
Zは以前にも一度さらっと出しましたが不定という意味で、
どんな値になるか解らないよ。という事です。

また、保持って何?って思った方も多いと思います。
これは直前の状態を維持するという意味で、
RやSが変化する直前のQ,Qbarの値のまま固定します。

より詳しく知りたい人は遷移表ステートマシンでググるとより詳しい知識が見につけられるでしょう。

・等価回路
これがNORを使ったRS-FFです。
NANDを使っても作れるのですが、マインクラフトには適してないので、
NOR型を覚えたほうが何かと便利です。

では、マインクラフトで実装してみましょう。

・マインクラフトでの実装例
二つ紹介しましたが、1個目と2個目は微妙に特性が違います。
1個目は
R,Sが同時に1や0になっても発振しない。
2個目は
R,Sが同時に1→0になると発振する。
といった特性があります。

RS-FFの特性としては2個目の方が正しいわけなのですが・・・
ここでのポイントは
状態が不定となるような条件で回路を動作させない
という事です。
これは論理回路全般のセオリーなので、よく覚えておきましょう。

2011年11月26日土曜日

論理回路基礎(9) XNOR素子

今日はさくっといきます
本日の紹介はXNOR素子です。
XORの逆Verですね。
色んな実現方法があると思うんですが、簡単にXORにNOTを入れた形にしたいと思います。
 
・回路記号
・真理値表
A B Y
0 0 1
0 1 0
1 1 1
1 0 0

AとBが同じ値の時は1
AとBが違う値の時は0
を出力します。

・等価回路
 ・マインクラフトでの実装
 お次はピストンVerです。
XORのピストンVerと見比べてみてください。
なんとも使い勝手が良さそうな形をしていると思いませんか?
個人的にはこのVerが一番のお気に入りです。

2011年11月25日金曜日

論理回路基礎(8) XOR素子

今回はXOR素子です。
三路スイッチとかでよく使われていて、
階段の上り口、降り口にスイッチ用意するような場面で役に立つと思います。

 ・回路記号
 ・真理値表

A B Y
0 0 0
0 1 1
1 1 0
1 0 1

AとBが同じ値の時は0
AとBが違う値の時は1
を出力します。

・等価回路
こんな感じですが、このまま実装するのは線が入り組んでいてややこしいので
例によって変換します。
どうしてこうなるかはブール代数使って計算してみてください。
ブール代数って何?って人はこうなるものだって感じで覚えた方が楽だと思います。

・マインクラフトでの実装例
結構大きな回路になっちゃいますね。
ということでピストンVerも作ってみました。
まさに冒頭で言った三路スイッチです。 少し小さくなりました。

2011年11月24日木曜日

ツール紹介 「CIRCUIT SIMULATOR」

本日は「CIRCUIT SIMULATOR」というツールを紹介します。

ダウンロードは↓のリンク先の矢印の箇所をクリックしてダウンロードします。
http://www.minecraftforum.net/topic/429400-circuit-simulator-v081-rek/


立ち上げると、こんな感じの画面が出てきます。
さて、何をするツールかというと回路シミュレータです。

事前にこのシミュレータで回路をテストすることで、動作が意図した通り動くかどうかチェックできます。
ただし、レッドストーントーチの焼ききれは再現できないようなので
高速な回路を作るときは注意してください。

回路は↓のボタンをクリックするとリアルタイムで動作します。


以下、いくつかの素子をこのシミュレータで作った例を挙げてみます。
・AND
・NOR

・クロック回路





俯瞰で回路をチェックするので、ある程度大きい回路を作ったり
効率的に回路を縮小するのに非常に役立つツールです。
是非一度試してみてはいかがでしょうか。

2011年11月23日水曜日

論理回路基礎(7) MUX素子

イカにあたってダウンしてました。
皆もイカの生食には注意してください。

余談はおいといて、今回はMUX(マルチプレクサ)素子です。
別名をセレクタと言います。

何をする物かというと読んで字のごとく
入力信号からセレクトした信号を出力します。

・回路記号
・真理値表
A B S Y
0 0 0 0
0 1 0 0
1 1 0 1
1 0 0 1
0 0 1 0
0 1 1 1
1 1 1 1
1 0 1 0

Sに注目すると
S=0の時、Y=Aになり
S=1の時、Y=Bになっているのがわかると思います。
つまり、Sの信号が0か1かでAを通過させるかBを通過させるか選んでいます。
これがセレクターの機能です。

・等価回路
セレクターは2個のANDと1個のOR,1個のNOTで作る事ができます。
下がその例です。




このままだとマインクラフトに実装しにくのでORとNOTで書いてみましょう。
ANDがORとNOTで作れる事はこれまでの解説から解ったと思います。
なので、ANDをORとNOTに置き換えると次の絵になります。

では、マインクラフトで実装してみましょう。

・マインクラフトでの実装例

上の回路図を実装した感じになってます。
実は、頑張って考えたこの回路ですけど、既に公開されてる方がおられました。



くやしいので、違うタイプのセレクタも作ってみました。
 このように、ピストンを使うと、ぐっと回路が小さくなることがあります。
論理回路だけでなく、こういった機械式のスイッチをうまく使えるようになると
マインクラフトの回路が面白くなるので、頭をひねると楽しいかと思います。

2011年11月18日金曜日

パルサー回路

今回も回路を紹介したいと思います。
今回紹介する回路は「パルサー回路」です。

・パルサー回路とは
好きな長さのON信号を取り出すための回路です。
入力がONになる瞬間に動作します。
OFF->ONでは動作しません
ピストンを連続動作させる回路とか
基準クロックを作る回路ではよく使われているようです。

・マインクラフトでの実装例
まずはピストンを利用したパルサーです。
入力にON信号が来ると、スティッキーピストンが動作して出力への信号を遮断します。
入力ONからピストンが動作しきるまでの長さのON信号を取り出せます。
ピストンの手前にリピーターを置くことで長さの調節もできます。
非常に高速なパルスを作る事ができます。

次に、ピストンを使わないパルサーです。
非常にコンパクトにできました。
真ん中のリピーターの数を増やしたりすることで長さの調節ができます。
ただし、 リピーターは3以上に設定しないとレッドストーントーチが焼き切れるため動作しません。

2011年11月17日木曜日

クロック回路

たまには基礎ではなく回路の紹介を
個人的に気に入っている2種類のクロック回路を紹介します。

・クロック回路とは
一定の周期でONOFFを繰り返す回路だと理解してOKです。

・実装例
では、早速回路を見てみましょう。
Wikiなどにも載ってるピストンクロックという奴ですね。
右上のスイッチをONにすると動作開始します。
真ん中のリピーターは3以上に設定しないと、動作が不安定になるので注意しましょう。
この回路の利点はコンパクトに作れます。

では、次の回路です。
右のピストンにONを入力すると動作します。
リピーターは合計で4以上に設定しないと、レッドストーントーチが焼き切れますので注意です。
この回路の利点は
通常のONOFFと逆位相の出力を得られる。
ピストンクロックと比べて静か。
という点が上げられます。

また、どちらの回路もスイッチのONOFFだけで動作する事がポイントです。
レッドストーンを付け直すとかそういう苦労はしなくてすむわけです。

2011年11月16日水曜日

レッドストーン回路基礎(4)

リピーター

リピーターという便利な素子について紹介します。
余談ですが、回路の世界では素子名としてはバッファーと呼ぶことの方が多いです。


リピーターの特性
  1. 延長素子として特性
  2. 遅延素子としての特性
  3. ダイオードとしての特性
  4. ブロックを信号元にする特性
おおざっぱにわけてこの4つです
レッドストーンの信号を伝達するだけの特性なので1.については割愛します。

遅延素子としての特性
リピーターには遅延調節用のスイッチがついていて、4段階の調節ができます。
左側の数字が段数、右側の数字が遅延する秒数です。
1段がレッドストーントーチ1個分の遅延に相当します。

ダイオード特性
リピーターには極性があります。
信号の伝達方向に制限があるわけです。
上図のように、方向によっては信号が伝達しないので注意してください。
また、これを生かした回路もあるので、調べてみると面白いかと思います。
(後日紹介する予定ではあります)

ブロックを信号元にする特性
よく、リピーターはブロックを貫通して信号を伝達すると思われてますが。
実はブロックが信号元になってます。
これは、よくリピーターの説明で使われる図ですね。
なるほど、ブロックを貫通しているように見えます。
では、次の図を見てみましょう。
この、2種類の図から見てわかるように
リピーターによって信号を伝達されたブロックが信号元になっているのがわかると思います。
特に下図は上下に信号を分岐させる時に便利なので、覚えておいて損は無いでしょう。

2011年11月15日火曜日

論理回路基礎(6) AND素子

AND

AND素子について紹介します。
AND素子はAとBが1の時のみ1を出力します。
回路記号を見るとNANDの○が無い形だというのがわかります。
これはNANDの逆の出力を出すという事が示されています。

・回路記号

・真理値表


A B Y
0 0 0
0 1 0
1 1 1
1 0 0

・マインクラフトでの実装



NANDの出力にNOTを入れた形と覚えておきましょう。

2011年11月14日月曜日

論理回路基礎(5) NAND素子

NAND

NAND素子について紹介します。
NAND素子はAとBが1の時のみ0を出力します。

・回路記号
・真理値表

A B Y
0 0 1
0 1 1
1 1 0
1 0 1

・マインクラフトでの実装


 2つ以上のNOTの出力をORでまとめた形と覚えておけばいいでしょう。

2011年11月13日日曜日

論理回路基礎(4) NOR素子

NOR

NOR素子について紹介します。
NORはNOT-ORの意味で、ORと反対の値が出力されます。

・回路記号
orの先に○がついたのがnorです。○はNOTの意味でマインクラフトにおいては
ここにレッドストーントーチを挿すと思えばいいです。

ORとNOTで表現するとこんな感じになります

・真理値表

A B Y
0 0 1
0 1 0
1 1 0
1 0 0

・マインクラフトでの実装

 NOTに二つ以上入力する形と覚えておけばいいでしょう。

2011年11月12日土曜日

論理回路基礎(3) OR素子

OR

OR素子について紹介します。
前回のNOTとあわせて、minecraftで最も基本的な素子になります。
AかBが1のとき1を出力します。

・回路記号

・真理値表
A B Y
0 0 0
0 1 1
1 1 1
1 0 1

・マインクラフトでの実装

凄く簡単ですね
レッドストーンを交差させるとORになります。
3入力、4入力のORをつくるときは交差させる線を増やすだけです。

2011年11月11日金曜日

論理回路基礎(2) NOT素子

NOT

NOT素子(別名インバーター)について紹介します。

レッドストーントーチについて説明する時にも紹介しましたが
少し詳しく書きます。

・回路記号
NOT素子の回路記号は下になります。
・真理値表
A Y
0 1
1 0

・マインクラフトでの実装
マインクラフトではこのように実装します。

フォロワー