• 沒有找到結果。

2 4 解碼器

N/A
N/A
Protected

Academic year: 2022

Share "2 4 解碼器"

Copied!
74
0
0

加載中.... (立即查看全文)

全文

(1)

數位邏輯設計與實習

ch04 組合邏輯電路設計

(2)

組合邏輯電路定義

X1 X2

Xn

Z1 Z2

Zm

Z1=F1(X1,X2、、、Xn) Z2=F2(X1,X2、、、Xn) 、

、 、

Zm=F2(X1,X2、、、Xn)

任何時刻 的輸出與 當時輸入 有關。

組 合

(3)

組合邏輯電路設計步驟

„

由電路的規格,決定所需的輸入與輸出的個 數,並且對每一個輸入與輸出安排一個變數 符號。

„

導出真值表並定義輸入與輸出間所需的關 係。

„

對每一個輸出求出以輸入變數為函數之簡化 的布林函數。

„

畫出邏輯圖,

a b c

f 多數電位

a b c

0 0 0 0 0 1 0 1 0 0 1 1

f 0 0 0 1

f= (3,5,6,7)

b

f=ab+ac+bc

(4)

組合電路種類

„

算術電路(加法器、減法器、乘法器)

„

解碼器

„

編碼器

„

多工器

„

解多工器

„

比較器

„

數碼轉換器

„

同位元產生器/檢查器

常則

(5)

加法器/減法器

„

1bit 加法器

„

1bit 減法器

„

4bit 並加器(漣波加法器)

„

4bit 加減器

„

4bit 加減器有旗號指示

„

1位數BCD加法器

(十進)

(6)

1bit加法器定義

„

半加器 :一位元與一位元相加, 不考慮進位

„

全加器 :一位元與一位元相加, 考慮前一級 進位

Half Adder,H.A

X

Y

S 和

C 進位

H.A

Full Adder,F.A

Xi

Yi

Si

Ci+1

F.A

(i)

(7)

半加器設計

„ Si=Σ(1,2)=Ai♁Bi Ci+i=Σ(3)=Ai*Bi

0 1

1 1

1 0

0 1

1 0

1 0

0 0

0 0

S i

C

i+1

B i A i

真值表

入 出

0 1 2 3

ˇ ˇ ˇ

=Ai:Bi

H.A

H.A

Ai

H.A

Bi

Sium

加法

(8)

全加器設計

Ai Bi Ci

Si

Ci+1

F.A

(9)

全加器真值表

1 1

1 1

1

0 1

0 1

1

0 1

1 0

1

1 0

0 0

1

0 1

1 1

0

1 0

0 1

0

1 0

1 0

0

0 0

0 0

0

S C i+1

C i B

A

輸入 輸出

0 1 2 3 4 5 6 7

i i i

ˇ ˇ

ˇ

ˇ ˇ

ˇ ˇ ˇ

行為

Ai

Bi Ci

Si

Ci+1

Si= (1,2,3,4,7)

Ci+1= (3,5,6,7) A

B

C

=Ai Bi Ci

B

=AiBi+AiCi+BiCi

(10)

全加器布林式

„

S

i

=Σ(1,2,4,7)=A

i

♁B

i

♁C

i

C

i+1

=Σ(3,5,6,7)=A

i

B

i

+A

i

C

i

+B

i

C

i

„

=A

i

B

i

+C

i

(A

i

♁B

i

)

=AB+C(A+B)

OR

0 0 0 1 1 0 1 1

0 1 1 1

(11)

用半加器設計全加器

半加

S=A B

C=AB

全加

S=A B C

Ci+1=AB+C(A B)

A B A B C

AB

C(A B)

Ci+1=AB+C(A B)

F.A=2H.A+OR get

(12)

1bit 減法器

„

半減器 :一位元與一位元相減,不考慮借位

„

全減器 :一位元與一位元相減, 考慮前一級 借位

x

y

D

B

HS

Half Sultractor

xi Di

FS

(13)

半減器設計

„

D

i

=Σ(1,2)=A

i

♁B

i

B

i+1

=Σ(1)= A'B

Ai

Bi

Di 差

Bi+1 借

HA

A B

0 0

0 1

1 0

1 1

0 0

1 1

0 1

0 0 Bi+1 Di

(14)

全減器設計

„

D

i

=Σ(1,2,4,7)=X

i

♁ Y

i

♁ B

i

B

i+1

=Σ(1,2,3,7)=X

i

Y

i

+X

i

B

i

+Y

i

B

i

1bit xiyi

Bi

Di Bi+1

A B Ci Bi+1 Di 0 0 0 0

0 0 1 1 0 1 0 2 0 1 1 3 1 0 0 4 1 0 1 5 1 1 0 6 1 1 1 7

0 0 1 1 1 1 1 0 0 1 0 0 0 0 1 1

y

(15)

4bit 並加器(漣波加法器)

FA

a b

ci+1 c

s

ripple adder

(16)

4bit 加減法器分析

4bit 減法器

方法一: FA FA

FA FA

方法二:用加法器代替減法器

A+B=A+B+0=A+B+0 A-B=A+(-B)=A+B+1

B

0 B

B

1 B

1.符號大小 2.1'S

(17)

4bit 加減器

A B

S

M 0加

1代 M=0加

M=1減

B3 B2 B1 B0

(18)

4bit 加減器有旗號指示

„

ZF(Zero Flag)

„

CF(Carry Flag)

„

SF(Sign Flag)

„

OF(Over Flag)

狀態

Flag 成立

(況)

zf=1 0

zf=0 結果不為零

進位

符號

溢位

0負

1正

符號、1's、2's

MSB overflow

狀態 Flag Reg status Reg

of zf sf cf

FA FA FA FA

S3 S2 S1 S0

(19)

4bit 加減器有旗號指示電路圖

FA FA FA FA

A A A A

OF ZF SF CF

A

A

S3 S2 S1 S0

C1 C2

C3 C4

A3B3 A2B2 A1B1 A0B0

C0

S:1 減

S:0 加

(20)

1位數BCD加法器分析

(21)

1位數BCD加法器

(22)

漣波加法器缺點

„

進位傳遞延遲 Si

Ci+1 A

B Ci

FA

產生 2個閘 delay

FA FA FA

FA C0

C1

C4 C3 C2

a3 b3 a2 b2 a1 b1 a0 b0

10ns

20ns

* 8 T=160ns

f= MHt

(23)

進位前看加法器(Carry Look-ahead Adder,CLA)

„

己知:A

3

A

2

A

1

A

0

,B

3

B

2

B

1

B

0

,C

0

„

未知: C

4

,C

3

,C

2

,C

1

„

S

i

=(A

i

♁ B

i

) ♁ C

i

„

C

i+1

=A

i

B

i

+ C

i

(A

i

♁B

i

)

„

令G

i

=A

i

B

i

(進位產生)

„

P

i

=A

i

♁ B

i

(進位傳遞)

a3~a0 b3~b0

s3~s0 c4 c0

FA

A B

ci+1 Ci

s 0 0

1

1 0

FA

0 1

1 0

1 1

☆ Ci+1=Gi+CiPi

FA

(24)

進位前看加法器

C

i+1

=G

i

+C

i

P

i

i=0 C

1

=G

0

+C

o

P

o

i=1 C

2

=G

1

+C

1

P

1

=G

1

+G

0

P

1

+C

o

P

o

P

1

i=2 C

3

=G

2

+C

2

P

2

=G

2

+G

1

P

2

+G

0

P

1

P

2

+C

o

P

o

P

1

P

2

i=3 C

4

=G

3

+C

3

P

3

=

G 3 +G 2 P 3 +G 1 P 2 P 3 +G 0 P 1 P 2 P 3 +C o P o P 1 P 2 P 3

AND OR

(25)

進位前看產生電路圖

(26)

進位前看加法器

三連波

4Gat

8bit 4Gat

ripple 16Gat

nA 2

(27)

乘法器

„

1bit 乘法器

„

2bit 乘法器(用HA,FA)

(28)

1bit 乘法器

A B

P

A B P 0 0

0 1 1 0 1 1

0 0 0 1

AND

(29)

2bit 乘法器真值表

3 3

a1 a0 b1 b0

(30)

2bit 乘法器

1 2 4 5

6 U2A 7421

9 10 11

8 U3C

7411

1 2 13

12 U4A

7411

3 4 5

6 U4B

7411

9 10 11

8 U4C

7411 1 2 13

12 U3A

7411

3 4 5

6 U3B

7411

5 6

U1C

7404

8 9

U1D

7404

12 13

U1F

10 11

U1E

7404

1 2

U1A

7404

3 4

U1B

7404

4 5

6 U6B

7432

8 9

10 U6C 7432

11 12

13 U6D 7432 1

2

3 U6A7432

A1 A0 B1 B0

P3

P1 P2

(1)

(31)

2bit 乘法器(用HA,FA分析)

a1 a0 b1   b0

a1b0  a0b0 a0b1 HA

+ a1b1 C 1+A

P1 P0 P2

P3

S S

b1 b0 a0 a1

HA

HA

S C

C

(32)

2bit 乘法器(用HA,FA)

1bit 乘法器

(33)

3bit 乘法器(用HA,FA)

a2 a1 a0

b2 b1 b0

*

a2b0 a1b1 a0b2

a1b0 a0b1

a0b0 a2b1

a2b2 a1b2 +

FA HA FA FA

P1 P0 P3 P2

P5 P4

C C C

S S S S

2 6

=64項

(34)

解碼器方塊圖

低太輸出

1對2解碼

Decodor

解 碼 入 器

n 2n

0

7 3對8解碼器

4*16

0

15

(35)

有致能解碼器方塊圖

有些解碼器電路沒有致 能控制線;有些電路為 高電位啟動。

Y

0

Y

1

解碼器

輸出端

致能控制線

Y

m-1

Y

m-2

⎬⎪

⎭⎪

n m

×

E x

0

x

1

x

n-1

x

n-2

⎪ ⎪

⎪ ⎪

(a) 非反相輸出

Y

0

Y

1

解碼器

致能控制線

Y

m-1

Y

m-2

⎬⎪

⎭⎪

n m

×

E x

0

x

1

x

n-1

x

n-2

⎪ ⎪

⎪ ⎪

(b) 反相輸出

n

m

高態相同 低態輸出

低態 (低電位)

(36)

2對4解碼器(高態輸出)

(1)方塊圖 (2)真值表

MSB a

b

d0 d1d2

d3

A B 0 0 0 1 1 0 1 1

d3 d2 d1 d0 0 0 0 1 0 0 1 0 0 1 0 0 1 0 0 0

(3)邏輯圖 a b

d0

d1

d2

最小項

(37)

有致能端2對4解碼器(高態輸出)

(a) 方塊圖

(b) 功能表 (c) 邏輯電路

0 x1 x0

0 1 0 1 0

Y0 Y1 Y2 Y3 E

1 0 0 0 0

1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0

0 0 0

φ φ

1 1

Y0 x1

Y2 Y3 E

Y1 x0

2 4 解碼器

x1

x0

E

Y0

Y1

Y2

Y3 低態

(38)

有致能端2對4解碼器(低態輸出)

(a) 方塊圖

(b) 功能表 (c) 邏輯電路

x1

x0

E

Y0

Y1

Y2

Y3 Y0

x1

Y2 Y3 E

Y1 x0

2 4 解碼器

0 x1 x0

0 1 0 1 0

Y0 Y1 Y2 Y3 E

1 1 1 1 1

0 1 1 1 1 0 1 1 1 1 0 1 1 1 1 0 0

0 0 0

φ φ

1 1 致能

平常

(39)

3對8解碼器—利用2對4解碼器

Y0 x0

Y2 Y3 E

Y1 x1

2 4 解碼器

Y0 x0

Y2 Y3 E

Y1 x1

2 4 解碼器

x2 x0 x1

Y0 Y1 Y2 Y3

Y4 Y5 Y6 Y7 A

B y0

y1

y7 x0

x1 x2

3*8 MSB

0

(40)

4對16解碼器—利用2對4解碼器

X0

X3

Y0

Y15 4*16

MSB

X0 X1

X2 X3

Y0

邏輯圖

ISE 繪圖

HDL 程式

(41)

編碼器方塊圖

入 出

2

n n log 2n

n

4對2編碼器

(42)

8對3編碼器

(a) 功能表 0

I2 I3

0 0 1 0 1

I4 I5 I6 I7

0 0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0

1 0 0 0

1 0 0

0 0 0 I1

I0 Y2 Y1 Y0

1 0 0 0 0

0 0

0 1 0 0

0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1

0 0 1 0 1 1 0

0 0 0 1 1 1 1

(b) 邏輯電路 I0

I2 I3 I1

I4

I6 I7 I5

Y2 Y1 Y0

不需要 8入

don't care 8對3 優先編碼器

優先

(43)

8對3優先權編碼器

低態 低態

致能

優先

(44)

多工器方塊圖

選擇線

2x1 MWX

4x1 MWX I0

I3

Multiplexer (MUX)

(45)

2對1多工器

Y I

0

I

1

S MUX

2 1 ×

(a) 方塊圖 (b) 功能表

S Y

0 1

I

0

I

1

(c) 邏輯電路 S

I

0

I

1

Y

真值表

(46)

Verilog 程式

module mux_2_1(

input a, input b, input s, output f );

wire s0,sa,sb;

not( s0, s );

and( sa, a, s0 );

and( sb, b, s );

or( f, sa, sb );

(47)

4對1多工器

(a) 方塊圖 (b) 功能表 (c) 邏輯電路

Y I0

I1 MUX4 1× I2

I3 S1 S0

Y

0 1

I0 I1 S1 S0

0 0

0 1 1 1

I2 I3

I0

I1

Y I2

I3

S1 S0

(48)

有致能端2對1多工器

(a) 功能表 (b) 邏輯電路

S Y

0 1

I

0

I

1

E

1 1

0 φ 0

S I

0

I

1

Y

E

高態致能

擴充用

(49)

4對1多工器—利用2對1多工器

S I0

多工器Y 2 ×1

I1 E

S I0

多工器Y 2 ×1

I1 E I0

Y I1

I2

I3

S1 S0 I0

I1 I2

Y

2對一 NOT閘

(50)

8對1多工器—利用2對1多工器

I0 I1

I2 I3

I4 I5

I6

I7 S2

I0

I7

S0 S1 S2

Y 高態致能7個

(51)

解多工器方塊圖

n 輸入

輸出

輸出(DeMux) DeMultiplieper

(52)

1 對2解多工器

(a) 方塊圖 (b) 功能表 (c) 邏輯電路

S Y

0

0 1

D 0

Y

1

D 0 D

Y

0

Y

1

S

DeMUX 1 2 ×

S

D Y

0

Y

1

(53)

有致能端1 對4解多工器

(a) 方塊圖 (b) 功能表 (c) 邏輯電路

D

0 S1 S0

0 1 0 1 0

Y0 Y1 Y2 Y3 E

1 0 0 0 0

D 0 0 0 0 D 0 0 0 0 D 0 0 0 0 D 0

0 0 0

φ φ

1 1

1 4 DeMUX

D

Y0 Y1 Y2

Y3 S0 S1 E

Y0

S1 S0 E

Y1

Y2

Y3

低態

(54)

8對1解多工器—利用4對1解多工器

1 4 DeMUX

D

Y0 Y1 Y2

Y3 S0 S1

E

1 4 DeMUX

D

Y0 Y1 Y2

Y3 S0 S1

E

Y0 Y1 Y2 Y3

Y4 Y5 Y6 Y7 D

S2

S1 S0 S1 S0

S0 S1 S2

(55)

1bit比較器方塊圖

(56)

4 bit比較器方塊圖

(57)

8 bit比較器—利用4 bit比較器

A

0

A

1

A

3

A

2

B

0

B

1

B

3

B

2

I

A>B

I

A=B

I

A<B

O

A>B

O

A=B

O

A<B

4位元比較器

A

0

A

1

A

3

A

2

B

0

B

1

B

3

B

2

I

A>B

I

A=B

I

A<B

O

A>B

O

A=B

O

A<B

4位元比較器

0 1 0

B

0

B

1

B

3

B

2

A

0

A

1

A

3

A

2

B

4

B

5

B

7

B

6

A

4

A

5

A

7

A

6

A B

低位元

相等

(58)

XOR特性1

„

N=2

„

N=4

(59)

XOR特性2

„

N=3

(60)

2進制對葛雷碼轉換器

(61)

葛雷碼 對2進制轉換器

(62)

BCD碼對加三碼的轉換電路

輸入BCD碼 輸出加三碼

w x y z D C B A

0 0 0 0 0 0 1 1

0 0 0 1 0 1 0 0

0 0 1 0 0 1 0 1

0 0 1 1 0 1 1 0

0 1 0 0 0 1 1 1

0 1 0 1 1 0 0 0

0 1 1 0 1 0 0 1

0 1 1 1 1 0 1 0

1 0 0 0 1 0 1 1

1 0 0 1 1 1 0 0

z = D'

y = CD +C'D‘

x = B'C + B'D+BC'D‘

D C B A w x y z

(63)

w

x

y

z

D

C

B

A

(64)

BCD碼對七段的轉換電路

w x y z

a b c d e f g

a b

c d e f

g

7447

7448

共陽型

共陰極 7段

送1亮

送0亮

(65)

同位元產生器/檢查器

„

同位產生器與檢查

„

偶同位位元: P = x ♁ y ♁ z

„

同位檢查器: C = x ♁ y ♁ z ♁ P

„

C =1:奇數個資料位元錯誤發生

„

C = 0:資料正確或偶數個資料位元錯誤發 生 xy

z PC偶同位 x y z F

(66)

3bit同位元產生器/檢查器

(67)

可規劃邏輯元件(PLD)

„

PLD: Programmable Logic Device

„

PROM (Programmable Read Only Memory )

„

PAL (Programmable Array Logic )

„

PLA (Programmable Logic Array)

„

FPGA –現場可規劃邏輯陣列 (field- programmable gate array)

z

可規劃邏輯區塊 (programmable logic blocks)

z

可規劃內部連接 (programmable interconnects)

(68)

ROM

(69)

PROM

(70)

PLD區別

(71)

PLA

(72)

PLA內部圖

(73)

3bit平方電路--分析

(74)

3bit平方電路

參考文獻

相關文件

„ FPGA –現場可規劃邏輯陣列 (field- programmable

z 可規劃邏輯區塊 (programmable logic blocks) z 可規劃內部連接

在數位系統中,若有一個以上通道的數位信號需要輸往單一的接收端,數位系統通常會使用到一種可提供選擇資料的裝置,透過選擇線上的編碼可以決定輸入端

„ FPGA –現場可規劃邏輯陣列 (field- programmable

„ FPGA –現場可規劃邏輯陣列 (field- programmable

„ FPGA –現場可規劃邏輯陣列 (field- programmable

„ FPGA –現場可規劃邏輯陣列 (field- programmable

„ FPGA –現場可規劃邏輯陣列 (field- programmable gate