• Tidak ada hasil yang ditemukan

順序回路 - Sophia

N/A
N/A
Protected

Academic year: 2024

Membagikan "順序回路 - Sophia"

Copied!
34
0
0

Teks penuh

(1)

順序回路

内部状態を保持し、

入力と入力前の状態とによって、

出力と出力後の状態が決まる 許される内部状態

: Q ⊂ { 0, 1 }

B

n

入力

m

出力の順序回路は

Boole

関数

f : Q × X

f

−→ Q × { 0, 1 }

m

(ここに X

f

⊂ { 0, 1 }

n は許される入力全体) を定める
(2)

内部状態を計算機内に如何に保持するか

コンデンサに電荷を蓄える

複数の安定状態を持つ論理回路で実現 例

:

フリップフロップ
(3)

フリップフロップ

(flip-flop)

原理図

:

Q Q 0 1 1 0

これに入出力端子を付ける

(4)

SR-

フリップフロップ

(Set-Reset) S

R

Q

Q

(S, R) = (1, 1)

は禁止入力

(X

f

= { (0, 0), (0, 1), (1, 0) } )

S R Q

0 0 Q

0 1 0

1 0 1

1 1 x

(5)

入力が

(S, R) = (1, 1)

とならない回路設計

−→ S = R

となるようにしてみる

S

R

Q

Q D

−→

入力

D

を保持・出力
(6)

これだと

D

をそのまま流しているのと同じ

−→

書込スイッチを付けよう

T :

スイッチ入力

• T = 0 :

そのまま

• T = 1 : D

を取り込む

Q

Q D

T

(7)

Q Q D

T

S R

T D S R Q

0 0 0 0 Q

0 1 0 0 Q

1 0 0 1 0

1 1 1 0 1

T D S R Q

0 ∗ 0 0 Q

1 ∗ D D D

(8)

Q Q D

T

S R

• Q

からの出力により他の値を計算

他からの入力により

D

を計算

−→ Q

D

に影響を与えることにより、

状態が変わってしまう

(9)

回路の他の部分と

タイミングを合わせる必要あり

−→

出力を一旦せき止めて、

一段階づつ計算を進める

−→ D-

フリップフロップ・クロックパルス の利用
(10)

D-

フリップフロップ

(Double, Delay)

Q Q D

T

S R

Q Q T

1 1

1 1

Q Q S R

2 2

2 2

SR 1 SR 2

• T = 1, T = 0 = ⇒ SR

1

:

取込、SR2

:

保持

• T = 0, T = 1 = ⇒ SR

1

:

保持、SR2

:

取込
(11)

D-

フリップフロップ

(Double, Delay)

Q Q D

T = D Q

T

• T = 1 :

入力

D

を内部に取り込む

(

出力

Q

は変わらない

)

• T = 0 :

内部状態を

Q

に送り出す

(入力 D

は受付けない)
(12)

: (CC

は適当な組合せ回路

)

• T = 1 :

入力

D

を内部に取り込む

• T = 0 : Q

に出力

−→ CC

の入力へ

−→ CC

での計算結果が

D

に到達

• T = 1 :

新たな

D

を内部に取り込む

−→ T = 1 → 0 → 1

と変化する度に、

計算が一段階進む

Q D T CC

A in out

(13)

一定の周期で

1 → 0 → 1

を繰り返す信号

(クロックパルス, clock pulse)

水晶発振器などで発生させることにより、

回路全体での同期を取って、計算を進める。

クロックパルスの周波数

−→

計算機の動作の速さ

(動作 clock

○○

Hz)

(14)

(

二進

)

カウンタ

T

が一周期変化する度に

内部状態が

1 → 0 → 1

と変化する。

Q

D T

(15)

四進カウンタ

T

が一周期変化する度に、内部状態が

00 → 01 → 10 → 11 → 00

と変化する。

Q D T Q

D T CK

(16)

計算機を構成する基本的な論理回路の 部品については紹介した。

(ここまで復習)

どのような部品をどう組み合わせれば 計算機の機能を実現できるか

(17)

計算機が実現すべきこと

データの保持・書込・読出

−→

順序回路

データの処理

(演算) −→

組合せ回路

• (データの入出力)

実行の制御

?

プログラムの読出

?

順次実行

?

条件分岐
(18)

データの保持・書込・読出

データの保持: 記憶装置

(memory) D-フリップフロップを必要なだけ並べる

その中の

どれを読み出すか

どれに書き込むか

−→

番地

(address)

で管理
(19)

データの読出し

address

0 1 2 3 memory

=D-flipflop B

0

B

1

B

2

B

3
(20)

データの読出し

: 1

番地のデータを読出し

address

0 1 2 3 memory

=D-flipflop B

0

B

1

B

2

B

3

0 1

(21)

データの書込み

address

0 1 2 3 memory

=D-flipflop B

0

B

1

B

2

B

3

D T T T T

D D D

D

(22)

データの保持・書込・読出

実際には、何

bit

かで一まとまりとして、

データの読み書き・演算等の処理を行なう

−→ 1

(word) (例: 1 word = 8 bit

= ⇒ 8

つを並列に並べておく

)

−→

○○

bit CPU

(一度に処理できるデータの大きさを表す)

(23)

プログラム内蔵方式

(von Neumann

)

プログラム・データを共にメモリ上に置く

−→

主記憶装置

実行の流れ

:

以下を繰り返す

プログラムを一命令づつ読み出す

命令の実行
(24)

説明用の簡易モデル

Instruction Register

Accumulator main memory 00000= 0

00001= 1 00010= 2 11111=31

Address Decoder 5bit 3bit

Instruction Decoder

add, subtract Arithmetic Unit

8FA add, subtract load,

store

Flag Register Program Counter

stop, jump, jump flag

(25)

プログラム内蔵方式

(von Neumann

)

プログラム・データを共にメモリ上に置く

−→

主記憶装置 実行の流れ: 以下を繰り返す

プログラムを一命令づつ読み出す

命令の実行

次にどの命令を読み出すか

−→

プログラムカウンタ
(26)

プログラムカウンタ

(program counter)

次に読み出す命令の番地

(address)

保持する一時記憶場所

(register)

順次実行

(

通常

):

次の番地

−→

基本はカウンタで実現

実行制御

(

無条件ジャンプ・条件分岐

):

指定の番地

−→

命令による値の書き換え
(27)

四進カウンタ

T

が一周期変化する度に、内部状態が

00 → 01 → 10 → 11 → 00

と変化する。

Q D T Q

D T CK

(28)

命令レジスタ

(instruction register)

読み出した命令の一時記憶場所が必要

−→

命令レジスタ 命令の種類:

演算

(

加減乗除・桁ずらし他

)

演算対象の指定

演算結果の保存

実行制御

終了 など
(29)

演算の実行の実際

実際には、二項演算は次のように行なう。

: C ← A + B (1) A

を読み出す

(2) B

(

読んで

)

足し込む

(3) C

に書き込む

読み出した値・演算結果の一時記憶場所が必要

−→

アキュムレータ

(accumulator)

(30)

命令の形式

:

命令の種類+番地 命令の種類:

主記憶からアキュムレータへの読出し

(load)

アキュムレータから主記憶への書込み

(store)

演算

(add, subtract)

実行制御

(jump, jump flag)

条件分岐の判断

−→

フラグレジスタ

終了

(stop)

−→

これらを論理回路で実装すれば良い
(31)

必要な構成要素

主記憶装置

プログラムカウンタ

命令レジスタ

アキュムレータ

(

汎用レジスタ

)

フラグレジスタ

番地解読回路・命令解読回路

演算回路

(補助演算回路)

パルス発生器
(32)

説明用の簡易モデルの仕様

• 1 word = 8 bit(= 1 byte)

−→

一度に扱うデータの大きさを規定

?

アキュムレータ

?

命令レジスタ

?

演算回路

?

主記憶

1

番地分

命令部:

3 bit、番地部: 5 bit

−→

扱える命令・番地の個数を規定

(制約)

(33)

説明用の簡易モデルの仕様

命令部:

3 bit、番地部: 5 bit

?

命令:

2

3

= 8

つ以内

load, store, add, subtract, jump, jump flag, stop.

?

番地

: 0

番地から

31

番地まで

−→

主記憶

2

5

= 32 byte

−→

プログラムカウンタは

5 bit

(34)

説明用の簡易モデルの仕様

Instruction Register

Accumulator main memory 00000= 0

00001= 1 00010= 2 11111=31

Address Decoder 5bit 3bit

Instruction Decoder

add, subtract Arithmetic Unit

8FA add, subtract load,

store

Flag Register Program Counter

stop, jump, jump flag

Referensi

Dokumen terkait

〔下級審民訴事例研究八〇〕遺産分割調停事件の相手方が税務署長に対して提出した相続税申告

社会4年−① 2 ページ 内容 種類 39 ・最終処分場(NHK for School) 40 リサイクルの様子 ・資源ごみの回収 ・リサイクルセンター(NHK for School) 41 リサイクルの流れの図を読み取る 43 ごみの処理のしくみの図を読み取る 44 ごみの量と処理にかかる費用 ・区民が出すごみの量を読み取る

2 目次 はじめに 第一章 ドイツのグリーン・ツーリズム 第一節 グリーン・ツーリズム普及を支えたドイツの社会構造と国民性 第二節 「農家で休暇を(Urlaub auf dem Bauernhof)」事業 第三節 EUにおける位置づけ―LEADER政策― 第二章 日本のグリーン・ツーリズム 第一節 日本におけるグリーン・ツーリズムの位置づけ 第二節

平方剰余符号 X`−1 = X−1fQXfNX これから構成される符号−→ 平方剰余符号 quadratic residue code, QR code※ 実際にはこの因数分解を求めるのが面倒 −→ 冪等生成元idempotent generator を用いると便利 ※ 2 次元バーコードのQRコードTM とは別物

今までに習った数学 算数 を 振り返ってみよう。 人間と数学の歴史を振り返る... 大学で数学を習って 新しく出来るようになったことって

4–2 代入 代入: assignment 宣言した変数へ値を代入書き込みするには = を用いる。代入文の書式は次の通り。 数学の“等式”と見た目には同じだが、イ メージとしては「変数名 ← 式の値」と いう感じ。 右辺の式を計算評価した値が、左辺の 変数名又は記憶領域を指し示す式が指 し示す記憶領域に書き込まれる。右辺の 式は単独の定数値や変数でも良い。

Ⅱ-②FTTH が普及する過程-仮説- まず、ADSL の場合、既に敷設工事がほぼ 100%完了している電話回線のモジュラージャック から直接インターネットを利用できたため、モデムさえ顧客に貸与すればすぐにでもサービスを 利用してもらうことができた。また、その普及に相乗効果を生み出したのは、Yahoo!BB が全面 に打ち出した、IP

【第2章 基本情報】 2−1 シェアリング・エコノミーの定義 総務省の発表する平成27年版情報通信白書によれば、 「シェアリング・エコノミー」とは、典型的には個人が保有する遊休資産(スキル のような無形のものも含む)の貸出しを仲介するサービスであり、貸主は遊休資産 の活用による収入、借主は所有することなく利用ができるというメリットがある。