19
2005/11/5 計算機論理設計 A.Matsuzawa 1 計算機論理設計 (A) (Computer Logic Design (A)) 東京工業大学 大学院理工学研究科 電子物理工学専攻 松澤 講義資料は HTTP://WWW.ssc.pe.titech.ac.jp よりダウンロードできる ID: handout, Pass: siryou

計算機論理設計 (A) (Computer Logic Design (A)) · 2005/11/5 計算機論理設計A.Matsuzawa 7 桁上げ先見加算器(CLA) CLA: Carry Lookahead Adder C A B S キャリーの性質を考える

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 計算機論理設計 (A) (Computer Logic Design (A)) · 2005/11/5 計算機論理設計A.Matsuzawa 7 桁上げ先見加算器(CLA) CLA: Carry Lookahead Adder C A B S キャリーの性質を考える

2005/11/5 計算機論理設計 A.Matsuzawa 1

計算機論理設計 (A) (Computer Logic Design (A))

東京工業大学大学院理工学研究科電子物理工学専攻

松澤 昭

講義資料は HTTP://WWW.ssc.pe.titech.ac.jpよりダウンロードできる

ID: handout, Pass: siryou

Page 2: 計算機論理設計 (A) (Computer Logic Design (A)) · 2005/11/5 計算機論理設計A.Matsuzawa 7 桁上げ先見加算器(CLA) CLA: Carry Lookahead Adder C A B S キャリーの性質を考える

2005/11/5 計算機論理設計 A.Matsuzawa 2

5. 加算器

2005年11月10日

Page 3: 計算機論理設計 (A) (Computer Logic Design (A)) · 2005/11/5 計算機論理設計A.Matsuzawa 7 桁上げ先見加算器(CLA) CLA: Carry Lookahead Adder C A B S キャリーの性質を考える

2005/11/5 計算機論理設計 A.Matsuzawa 3

デジタルシステムの基本構成

演算器 メモリ

Page 4: 計算機論理設計 (A) (Computer Logic Design (A)) · 2005/11/5 計算機論理設計A.Matsuzawa 7 桁上げ先見加算器(CLA) CLA: Carry Lookahead Adder C A B S キャリーの性質を考える

2005/11/5 計算機論理設計 A.Matsuzawa 4

ハーフアダー

キャリーが入らない加算ANDBACEXORBAS

,,

⋅=⊕=

Page 5: 計算機論理設計 (A) (Computer Logic Design (A)) · 2005/11/5 計算機論理設計A.Matsuzawa 7 桁上げ先見加算器(CLA) CLA: Carry Lookahead Adder C A B S キャリーの性質を考える

2005/11/5 計算機論理設計 A.Matsuzawa 5

フルアダー

キャリーが入るときの加算多数決論理,

,ACCBBAC

EXORCBAS⋅+⋅+⋅=

⊕⊕=

(0, 1のうち数が多いほうが出力となる)

Page 6: 計算機論理設計 (A) (Computer Logic Design (A)) · 2005/11/5 計算機論理設計A.Matsuzawa 7 桁上げ先見加算器(CLA) CLA: Carry Lookahead Adder C A B S キャリーの性質を考える

2005/11/5 計算機論理設計 A.Matsuzawa 6

リップルキャリーアダー

キャリー

キャリー信号が下位の桁から順番に上がってくる。したがって計算速度が遅い。

32ビット加算では 32x 3= 96段の回路が必要である。

Page 7: 計算機論理設計 (A) (Computer Logic Design (A)) · 2005/11/5 計算機論理設計A.Matsuzawa 7 桁上げ先見加算器(CLA) CLA: Carry Lookahead Adder C A B S キャリーの性質を考える

2005/11/5 計算機論理設計 A.Matsuzawa 7

桁上げ先見加算器(CLA)CLA: Carry Lookahead Adder

C

AB

S

キャリーの性質を考える

1) None

に依らずのときは in

out

CBAC

),(),( 000=

=

2) Pass

の場合もしくは ),(),(),( 1001=

=

BACC inout

3) Generate

に依らず の場合 in

out

CBAC

,),(),( 111=

=

桁上がり入力があると桁上がり出力が発生する

必ず桁上がり出力が発生する

Page 8: 計算機論理設計 (A) (Computer Logic Design (A)) · 2005/11/5 計算機論理設計A.Matsuzawa 7 桁上げ先見加算器(CLA) CLA: Carry Lookahead Adder C A B S キャリーの性質を考える

2005/11/5 計算機論理設計 A.Matsuzawa 8

桁上げの算出

16b 13b

ここからのキャリーは必ず”0”

”0”が上がっていく

したがって キャリーは”0”

ここからのキャリーは必ず”1”

25b20b

”1”が上がっていく

したがって キャリーは1”

Page 9: 計算機論理設計 (A) (Computer Logic Design (A)) · 2005/11/5 計算機論理設計A.Matsuzawa 7 桁上げ先見加算器(CLA) CLA: Carry Lookahead Adder C A B S キャリーの性質を考える

2005/11/5 計算機論理設計 A.Matsuzawa 9

G, Pを用いたSumとCarryの発生

Generate

Pass

SumはPass信号と桁上がり入力信号で決まり桁上げ信号出力はG信号とPass信号と桁上がり入力信号で決まる

Page 10: 計算機論理設計 (A) (Computer Logic Design (A)) · 2005/11/5 計算機論理設計A.Matsuzawa 7 桁上げ先見加算器(CLA) CLA: Carry Lookahead Adder C A B S キャリーの性質を考える

2005/11/5 計算機論理設計 A.Matsuzawa 10

桁上げ信号の論理展開式

( )211

1

−−−

⋅+⋅+=⋅+=

iiiii

iiii

CPGPGCPGC

Page 11: 計算機論理設計 (A) (Computer Logic Design (A)) · 2005/11/5 計算機論理設計A.Matsuzawa 7 桁上げ先見加算器(CLA) CLA: Carry Lookahead Adder C A B S キャリーの性質を考える

2005/11/5 計算機論理設計 A.Matsuzawa 11

CLAユニット

4ビットでまとめた、キャリー専用の論理回路

Page 12: 計算機論理設計 (A) (Computer Logic Design (A)) · 2005/11/5 計算機論理設計A.Matsuzawa 7 桁上げ先見加算器(CLA) CLA: Carry Lookahead Adder C A B S キャリーの性質を考える

2005/11/5 計算機論理設計 A.Matsuzawa 12

4ビット桁上げ先見加算器

1iiii CPGC −⋅+=

はじめにG、Pを作る

CLA回路で桁上がり

信号だけを高速に作る

最後にCLA回路で作成した桁上がり信号とPを演算して

加算結果を出力する

iii

iii

BAPBAG

⊕=⋅=

1iii CPS −⊕=

Page 13: 計算機論理設計 (A) (Computer Logic Design (A)) · 2005/11/5 計算機論理設計A.Matsuzawa 7 桁上げ先見加算器(CLA) CLA: Carry Lookahead Adder C A B S キャリーの性質を考える

2005/11/5 計算機論理設計 A.Matsuzawa 13

4ビットを一括したP,G信号の発生

C0C1C2

C-1が発生して4ビット単位のパスが通る条件

4ビット単位のGが発生する条件4ビット単位のキャリーが発生する条件

Page 14: 計算機論理設計 (A) (Computer Logic Design (A)) · 2005/11/5 計算機論理設計A.Matsuzawa 7 桁上げ先見加算器(CLA) CLA: Carry Lookahead Adder C A B S キャリーの性質を考える

2005/11/5 計算機論理設計 A.Matsuzawa 14

キャリー発生の展開式

1

1

⋅+=⊕=⊕=⋅=

iiii

iii

iii

iii

CPGCCPSBAPBAG

1215−G

4b 単位 4b 単位 4b 単位

1215−G 1215−P 811−G 811−P 47−G 03−G47−P 03−P 1−C

4ビット単位のG,P信号と最初の桁上げ入力信号で表現している

Page 15: 計算機論理設計 (A) (Computer Logic Design (A)) · 2005/11/5 計算機論理設計A.Matsuzawa 7 桁上げ先見加算器(CLA) CLA: Carry Lookahead Adder C A B S キャリーの性質を考える

2005/11/5 計算機論理設計 A.Matsuzawa 15

CLA2段の加算器

CLA

CLA

C-1

実際にはG,P作成回路と和ユニットが必要である。

Page 16: 計算機論理設計 (A) (Computer Logic Design (A)) · 2005/11/5 計算機論理設計A.Matsuzawa 7 桁上げ先見加算器(CLA) CLA: Carry Lookahead Adder C A B S キャリーの性質を考える

2005/11/5 計算機論理設計 A.Matsuzawa 16

長い語長の加算器

2ブロック間の桁上げ信号が通過

各ブロックの桁上げ信号は逐次各ブロックを通過する。速度は遅い

全桁上げ先見

Page 17: 計算機論理設計 (A) (Computer Logic Design (A)) · 2005/11/5 計算機論理設計A.Matsuzawa 7 桁上げ先見加算器(CLA) CLA: Carry Lookahead Adder C A B S キャリーの性質を考える

2005/11/5 計算機論理設計 A.Matsuzawa 17

桁上げ選択加算器

キャリーが1の場合と0の場合をあらかじめ計算しておき、キャリーが確定し

たときにどちらかを選択して出す。

Page 18: 計算機論理設計 (A) (Computer Logic Design (A)) · 2005/11/5 計算機論理設計A.Matsuzawa 7 桁上げ先見加算器(CLA) CLA: Carry Lookahead Adder C A B S キャリーの性質を考える

2005/11/5 計算機論理設計 A.Matsuzawa 18

桁上げ選択加算器

113

033

113

13

033

11

111

⋅+=

==

===

CCCCCC

CCCのときであるからになるには

のときであるが、もしくはになるのは

最下位からのキャリー信号を伝播させないのでCLAよりも高速である。

Page 19: 計算機論理設計 (A) (Computer Logic Design (A)) · 2005/11/5 計算機論理設計A.Matsuzawa 7 桁上げ先見加算器(CLA) CLA: Carry Lookahead Adder C A B S キャリーの性質を考える

2005/11/5 計算機論理設計 A.Matsuzawa 19

宿題

1)フルアダーがハーフアダー2段で構成できることを論理式で示し、回路を構成せよ。

2)リップルキャリー4ビットの加算器をハーフアダーとフルアダーを用いて構成せよ

3)CLA方式の4ビットの加算器を構成せよ。

以上においては論理式を示し、具体的な論理回路を示す必要はない。