제 2 장 컴퓨터의 논리 회로

69
2 2 제 제제제제 제제 제제 제 제제제제 제제 제제

Upload: renate

Post on 02-Feb-2016

252 views

Category:

Documents


0 download

DESCRIPTION

제 2 장 컴퓨터의 논리 회로. 컴퓨터의 논리 회로. 강의 내용 디지탈 논리 회로 (Digital Logic Circuit) 논리 회로의 기능 표시 부울 함수 (Boolean Function), 진위표 (Truth Table), 논리 회로도 (Logic diagram) 등 조합 논리 회로 (Combinational Logic) 의 요소 게이트 (Gate) 의 표시와 진위표 완전 집합 (Complete Set) 결선 논리 회로 (Wired Logic, Virtual Logic, Dot Logic) - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: 제 2 장 컴퓨터의 논리 회로

제제 22 장 컴퓨터의 논리 회로장 컴퓨터의 논리 회로

Page 2: 제 2 장 컴퓨터의 논리 회로

컴퓨터의 논리 회로컴퓨터의 논리 회로 강의 내용

디지탈 논리 회로 (Digital Logic Circuit) 논리 회로의 기능 표시

부울 함수 (Boolean Function), 진위표 (Truth Table), 논리 회로도 (Logic diagram) 등

조합 논리 회로 (Combinational Logic) 의 요소 게이트 (Gate) 의 표시와 진위표 완전 집합 (Complete Set) 결선 논리 회로 (Wired Logic, Virtual Logic, Dot Logic)

순서 논리 회로 (Sequential Logic) 의 요소 플립플롭 (Flip Flop) 과 래치 (Latch)

순서 논리 회로 클록 사이클 (Clock Cycle) 순서 논리 회로로서 중앙 처리 장치 (CPU)

Page 3: 제 2 장 컴퓨터의 논리 회로

제 2 장 강의 내용 ( 계속 ) 컴퓨터의 기능적 회로 블록

반 가산기 (Half Adder) 전 가산기 (Full Adder) 부호 해독기 (Decoder) 멀티플렉서 (Multiplexer) 디멀티플렉서 (Demultiplexer) 레지스터 (Register) 시프트 레지스터 (Shift Register) 계수기 (Counter)

집적 회로 (Integrated Circuit) 범용 대규모 집적 회로 (LSI)

ROM - ROM, PROM, EPROM PLA 마이크로프로세서 (Microprocessor)

컴퓨터의 논리 회로컴퓨터의 논리 회로

Page 4: 제 2 장 컴퓨터의 논리 회로

디지탈 논리 회로디지탈 논리 회로 회로

아날로그 (Analog) 회로와 디지탈 (Digital) 회로

디지탈 논리 회로 (Digital Logic Circuit) 디지탈 신호 ( 불연속적 신호 ) 로 나타낸 정보를 처리하는 회로

• 예 : 2 진 디지탈 회로 - 정보는 0 과 1 두 가지로 표현

2 종류의 디지탈 회로 • 조합 (Combinational) 논리 회로와 순서 (Sequential)

논리 회로• 조합 논리 회로

– 출력 값은 입력 값에 의하여만 결정됨– 예 : 게이트 (AND, OR, Inverter, NAND, NOR, XOR, 등 )

• 순서 논리 회로– 출력 값은 회로의 상태 ( 기억된 정보 ) 와 입력 값에 의하여 결정됨– 플립플롭 (Flip Flop: FF), 래치 (Latch)

Value 0

Value 15

3

10

Volt

undefined

Page 5: 제 2 장 컴퓨터의 논리 회로

논리 회로의 기능 표시방법논리 회로의 기능 표시방법 부울 대수 (Boolean algebra)

논리 덧셈 : OR 회로 논리 곱셈 : AND 회로 논리 부정 : 인버터 (NOT)

부울 함수 (Boolean Function) X = A + B’C (B’ = B )

Truth Table Logic Diagram A B C X

0 0 0 00 0 1 10 1 0 00 1 1 01 0 0 11 0 1 11 1 0 11 1 1 1

A

B

C

X

Y

Z

A B X0 0 00 1 01 0 01 1 1

A B X0 0 00 1 11 0 11 1 1

A X0 01 1

Page 6: 제 2 장 컴퓨터의 논리 회로

부울 대수의 액시옴부울 대수의 액시옴 (Axiom)(Axiom)

x + 0 = x x . y = y . xx . 0 = 0 x + (y + z) = (x + y) + z

x + 1 = 1 x . (y . z) = (x . y) . zx . 1 = x x . (y + z) = x . y + x . zx + x = x x + y . z = (x + y) . (x + z)x .x = x (x + y)’ = x’ . y’x + x’ = 1 (x . y)’ = x’ . y’x . x’ = 0 (x’)’ = xx + y = y + x

Page 7: 제 2 장 컴퓨터의 논리 회로

조합 논리 회로조합 논리 회로 ::

게이트 도형과 진위표게이트 도형과 진위표AND 게이트 A

B X

A B X0 0 00 1 01 0 01 1 1

OR 게이트 AB X

A B X0 0 00 1 11 0 11 1 1

A X A X0 01 1

버퍼 (Buffer)

X = A ・ B X = A∧B

X = A + B X = A∨B

X = A

Page 8: 제 2 장 컴퓨터의 논리 회로

NAND 게이트 AB X

A B X0 0 10 1 11 0 11 1 0

NOR 게이트 AB X

A B X0 0 10 1 01 0 01 1 0

A XA X0 11 0

인버터 (Inverter)

조합 논리 회로조합 논리 회로 ::

게이트 도형과 진위표게이트 도형과 진위표

X = (A ・ B)’ X = (A ・ B)

X = (A + B)’ X = (A + B)

X = A’ X = A

버블

Page 9: 제 2 장 컴퓨터의 논리 회로

배태적 OR(Exclusive OR)

X

A B X0 0 00 1 11 0 11 1 0

AB

조합 논리 회로조합 논리 회로 ::

게이트 도형과 진위표게이트 도형과 진위표

X

A B X0 0 10 1 01 0 01 1 1

AB

배태적 NOR (Exclusive NOR)

X = A ⊕ B X = A ・ B’ + A’ ・B

X = (A ⊕ B)’ X = A’ ・ B’ + A ・B

Page 10: 제 2 장 컴퓨터의 논리 회로

논리 회로의 기능 표시방법논리 회로의 기능 표시방법 부울 함수 (Boolean Function)

X = A + B’C (B’ = B )

Truth Table Logic Diagram

A B C X0 0 0 00 0 1 10 1 0 00 1 1 01 0 0 11 0 1 11 1 0 11 1 1 1

A

B

C

X

Y

Z

X = A + Y Y = Z ・ C Z = B’

X = A + B’ ・ C

Page 11: 제 2 장 컴퓨터의 논리 회로

논리 회로의 기능 표시방법논리 회로의 기능 표시방법예 A

B

C

X1

X2

X3

X

X = X1 + X2 + X3

X1 = A ・ B

X2 = A ・ B’ ・ C

X3 = A’ ・ C’

X = (A ・ B) + (A ・ B’ ・ C) + (A’ ・ C’)

Page 12: 제 2 장 컴퓨터의 논리 회로

논리 회로의 기능 표시방법논리 회로의 기능 표시방법예 2.1 A

BX

X1

X2

X = (X1 ・ X2)’

X1 = (A ・ X2)’

X2 = B’

X = ((A ・ (B’))’ ・ (B’))’

X = ((A ・ (B’))’ ・ (B’))’ = (A ・ (B’)) + B

= (A ・ B’) + B = B + (A ・ B’) = (B + A) ・ (B + B’) = (B + A) ・ 1 = B + A

A

BX

Page 13: 제 2 장 컴퓨터의 논리 회로

조합 논리 회로조합 논리 회로 ::

완전 집합완전 집합게이트의 완전 집합 (Complete Set)

• 서로 다른 게이트의 집합으로 하나의 완전 집합에 속하는 게이트들만 가지고 임의의 논리 기능을 구현할 수 있음

• {I, AND}, {I, OR}, {NAND}, {NOR}, {AND, XOR}, {OR, XOR}, ...( 예 )

• {NOT, OR} A + B = (A’)’ + (B’)’ = (A’ ・ B’)’

• {NAND} AND 의 출력 단자에 인버터를 연결• {NOR} OR 의 출력 단자에 인버터를 연결 (A + B)’ = A’ ・ B’

• {XOR} A ・ B’ + A’ ・ B = (((A ・ B’) + (A’ ・ B))’)’

= ((A ・ B’)’ ・ (A’ ・ B)’)’

• {XNOR} A’ ・ B’ + A ・ B = (((A’ ・ B’) + (A ・ B))’)’

= ((A’ ・ B’)’ ・ (A ・ B)’)’

완전 집합과 반도체 장치 기술과의 관계

집적 회로 : TTL, ECL - 완전 집합• TTL NAND 게이트• ECL NOR 게이트

Page 14: 제 2 장 컴퓨터의 논리 회로

부울 함수의 간소화부울 함수의 간소화

부울 식F = xyz + xyz F = x(yz + yz) = x(y ⊕ z)

부울 함수의 간소화정리와 가설을 이용한 간소화 방법 카노우 맵 (Karnaugh Map) 을 이용한 간소화

Page 15: 제 2 장 컴퓨터의 논리 회로

부울 함수의 간소화부울 함수의 간소화(1) 정리와 가설을 이용한 간소화 방법

AB

F = AB’ +B

F = AB’ + B = B + AB’ (9) 적용 = (B + A)(B + B’) (14) 적용 = (B + A) ・ 1 (7) 적용 = B + A (4) 적용 = A + B (9) 적용

A

BF = A + B

Page 16: 제 2 장 컴퓨터의 논리 회로

부울 함수의 간소화부울 함수의 간소화(2) 카노우 맵을 이용한 간소화 카노우 맵 (Karnaugh map) 사각형으로 된 그림으로 곱들의 합을 단순화( 예 ) x, y 로 구성된 최소항 xy, xy, xy, xy 의 카노우 맵

Page 17: 제 2 장 컴퓨터의 논리 회로

부울 함수의부울 함수의 간소화 간소화

【예】부울식을 카노우 맵으로 그려라 .

Page 18: 제 2 장 컴퓨터의 논리 회로

카노우 맵에서 두 개의 인접된 칸이 1 : 최소항은 두 변수 중에서 하나만으로 표현 가능 [ 예 ] xy + xy = (x + x) y = y

인접하는 네 개의 칸이 1 : 네 개의 최소항은 한 개의 최소항으로 합성

부울 함수의부울 함수의 간소화 간소화

Page 19: 제 2 장 컴퓨터의 논리 회로

【예】부울식을 카노우 맵을 사용하여 간소화

부울 함수의부울 함수의 간소화 간소화

Page 20: 제 2 장 컴퓨터의 논리 회로

【예】부울 함수를 간소화

부울 함수의부울 함수의 간소화 간소화

F = A’B’ + AB’ + AB

(1) 변수의 개수에 따라 카노우 맵을 만든다

B B’

A A’ (2) 주어진 부울 함수의 각

항에 대응하는 카노우 맵의 셀에 1, 0 을 기입

B B’

A A’

1 1 0 1

A

B’

(3) 묶인 각 그룹을 OR 연산자로 묶는다

F = A + B’

Page 21: 제 2 장 컴퓨터의 논리 회로

세 개의 변수를 가진 부울식을 카노우 맵으로 표현 여덟 개의 칸이 필요 각 칸은 여덟 개의 최소항을 표현 인접하는 두 개의 칸이 합성 가능하면 최소화 맨 왼쪽 칸과 맨 오른쪽 칸은 붙어 있는 것으로

생각

부울 함수의부울 함수의 간소화 간소화

Page 22: 제 2 장 컴퓨터의 논리 회로

인접된 칸 중에서 최대를 구함 최대 인접된 칸을 취하는 방법이 다양하므로 구한

최소항도 다양

부울 함수의부울 함수의 간소화 간소화

Page 23: 제 2 장 컴퓨터의 논리 회로

【예】카노우 맵을 사용하여 간소화

부울 함수의부울 함수의 간소화 간소화

Page 24: 제 2 장 컴퓨터의 논리 회로

[ 풀이 ]

부울 함수의부울 함수의 간소화 간소화

Page 25: 제 2 장 컴퓨터의 논리 회로

【예】간소화된 회로를 구하라(1)

xyz

xyz

x

xyz

xyzxyz + xyz

xyz

xyz

xyz

xyz

xyz + xyz + xyz + xyz

z

yz

x

z

xyz

xyz

xyz

xyz

xyz

부울 함수의부울 함수의 간소화 간소화

(2)

Page 26: 제 2 장 컴퓨터의 논리 회로

[ 풀이 ]

부울 함수의부울 함수의 간소화 간소화

Page 27: 제 2 장 컴퓨터의 논리 회로

네 개의 변수 (variable) 로 표현된 카노우 맵16 개의 칸으로 나누어진다 .16 개의 최소항을 표현

부울 함수의부울 함수의 간소화 간소화

Page 28: 제 2 장 컴퓨터의 논리 회로

【예】카노우 맵을 사용하여 부울식을 간소화

부울 함수의부울 함수의 간소화 간소화

Page 29: 제 2 장 컴퓨터의 논리 회로

[ 풀이 ]

부울 함수의부울 함수의 간소화 간소화

Page 30: 제 2 장 컴퓨터의 논리 회로

결선 논리 회로결선 논리 회로 ((Wired LogicWired Logic))

결선 논리 회로 (Wired Logic)- 점 논리 회로 (Dot Logic) 혹은 가상 논리 회로 (Virtual Logic) 라고도 부름

• 결선 논리 회로는 능동 소자 (active component) 를 사용하지 않고 특정한 논리 기능을 구현하는 데 사용됨

• 결선 논리 회로는 특정한 게이트의 출력 단자를 서로 연결한 것임• 인쇄기판 (printed circuit board: PCB) 의 면적을 절약할 수 있는 장점• TTL OC(open collector) 와 ECL 게이트 , 그리고 3 상 버퍼 (tristate buffer)

결선 논리 회로의 중요성

버스에 정보를 전달하기 위하여 구동시킬 때에는 각 비트 회선마다버퍼가 필요한데 , TTL(OC) 게이트와 3 상 버퍼 (tristate Buffer) 는 그 자체가 구동기이다 .

Page 31: 제 2 장 컴퓨터의 논리 회로

TTL(OC) TTL(OC) 결선 논리 회로결선 논리 회로 ::

결선 결선 AND AND 회로회로NAND

NANDWL

R

+Volt

AS1BS2

X = (A . S1)’ . (B . S2)’

NAND

NANDOR

AS1BS2

X = (((A . S1)’)’ + ((B . S2)’)’)’

NAND

NANDOR

AS1BS2

X = ((A . S1) + (B . S2))’I

Page 32: 제 2 장 컴퓨터의 논리 회로

결선 논리 회로결선 논리 회로 ::

33 상 버퍼상 버퍼

A XA X

SS

A S X0 0 HiZ1 0 HiZ0 1 01 1 1

A S X1 1 HiZ1 0 HiZ1 0 00 0 1

버스 접속 응용A SA B SB P SP

BUS

Page 33: 제 2 장 컴퓨터의 논리 회로

조합 논리 회로조합 논리 회로

반 가산기 (Half Adder) 전 가산기 (Full Adder) 연산기 (ALU) 부호 해독기 (Decoder) 멀티플렉서 (Multiplexer) 디멀티플렉서 (Demultiplexer) 패리티 비트 발생기 (Parity Generator) 패리티 비트 검사기 (Parity Checker) 부호 변환기 (Code Converter)

Page 34: 제 2 장 컴퓨터의 논리 회로

순서 논리 회로순서 논리 회로순서 논리 회로 요소 (FF 혹은 래치 ) 를 포함한 논리 회로

플립플롭 (Flip Flop: FF)• 1 비트 기억 장소• 2 가지의 안정된 상태를 가진 장치

플립플롭의 2 가지 안정된 상태 (State)

1- 상태

Q=1

Q’=0

0- 상태

Q=0

Q’=1

Page 35: 제 2 장 컴퓨터의 논리 회로

순서 논리 회로순서 논리 회로 ::

SRSR-- 래치래치 (SR(SR--Latch)Latch)S

R

OR

OR

I Q’

I Q

S Q

R Q’

특성표 (characteristic table)

S R Q Comment 0 0 Q0 불변 0 1 0 리세트 (reset) 1 0 1 세트 (set) 1 1 - 금지

비동기적 (Asynchronous) 동작• 입력 변화에 반응• 많은 수의 FF 이 있는 회로의 경우에는 신호 전달의 지연시간이 일정하지 않으므로 어느 FF 의 상태가 언제 변하는지 알 수 없기 때문에 대단히 위험한 동작임 동기적 (Synchronous) 동작이 안전

SRL

Page 36: 제 2 장 컴퓨터의 논리 회로

순서 논리 회로순서 논리 회로 ::

동기동기 (Synchronous) SR-(Synchronous) SR- 래치래치

S

R

OR

OR

I Q’

I Q

S Q

R Q’

AND

AND

Clock C

특성표

S R C Q Q’ 주석 d d 0 Q0 Q0’ 불변 0 0 1 Q0 Q0’ 불변 0 1 1 0 1 리세트 (reset) 1 0 1 1 0 세트 (set) 1 1 1 - - 금지

동기 SR- 래치 (Synchronous SR-Latch)

SRL

Page 37: 제 2 장 컴퓨터의 논리 회로

순서 논리 회로순서 논리 회로 ::

DD-- 래치래치 (D(D--Latch)Latch)동기 SR- 래치와 같으나 , 입력 단자에 입력 신호가 S=R=1 이 되지 못하게 하는 외부 회로가 있음

S Q Q

R Q’ Q’

C

D

E

D Q

E Q’

특성표

D E Q Q’ d 0 Q0 Q0’ 0 1 0 1 1 1 1 0

DLSRL

Page 38: 제 2 장 컴퓨터의 논리 회로

순서 논리 회로순서 논리 회로 ::

DD-- 플립플롭플립플롭 (D(D--Flip Flop)Flip Flop)D- 플립플롭은 클록 펄스의 유효한 펄스 전환이 일어나기 직전에 D 입력 단자에 가해진 입력 정보를 기억시킨다 .

2 개의 동기 SR- 래치를 이용하여 다음과 같이 합성할 수 있다

S2 Q2 Q

R2 Q2’ Q’

C2

S1 Q1

R1 Q1’

C1

D

C

D Q

C Q’

특성표 D C Q Q’ d 0 Q0 Q0’ 0 0->1 0 1 1 0->1 1 0

DFFSRL SRL

Page 39: 제 2 장 컴퓨터의 논리 회로

순서 논리 회로순서 논리 회로 ::

JKJK-- 플립플롭플립플롭 (JK(JK--Flip Flop)Flip Flop)JK- 플립플롭은 SR- 래치의 입력 신호의 값이 S=R=1 인 것을 유효한 입력이 되게 한다 . JK- 플립플롭은 2 개의 동기 SR- 래치를 사용하여 다음과 같이 합성할 수 있다

S2 Q2 Q

R2 Q2’ Q’

C2

S1 Q1

R1 Q1’

C1

J

K

C

AND

AND

J Q

C JKF

K Q’

특성표

J K C Q Q’ 0 0 d Q0 Q0’ d d 0 Q0 Q0’ 0 1 0->1 0 1 1 0 0->1 1 0 1 1 0->1 Q0’ Q0

SRL SRL

Page 40: 제 2 장 컴퓨터의 논리 회로

래치와 플립플롭래치와 플립플롭 래치

클록 펄스의 유효 레벨에서 데이터 입력 단자에 가해지는 신호의 값을 기억시킴 플립플롭

클록 펄스의 유효 전환 직전에 입력 단자에 가해지는 신호의 값을 기억시킴

데이터 경로의 지연시간을 잘 알 수 없을 때에는 플립플롭이나 래치의 입력 단자에 유효 데이터가 나타나는 정확한 시점을 예측하기 어렵다 .

플립플롭을 사용하려면 클록 펄스의 유효 전환을 언제 시켜야 하는가를 정확히 알아야 하므로 플립플롭은 사용하기가 어렵다 .

Dataclock

latchF/F

Page 41: 제 2 장 컴퓨터의 논리 회로

순서 논리 회로순서 논리 회로 순서 논리 회로 - FF 나 래치가 포함된 논리 회로

안정된 동작을 위하여는 클록이 필요 클록 사이클

FF 조합 논리 회로 (tc) FF

t1 tc t3

최소 클록 사이클 타임 = (t1 + t2 + t3) = ( (ts + th + td) + tc)FF: Setup time(ts): 유효 클록 펄스 전환 이전에 데이터를 일정한 값으로 유지해야 하는 시간 Hold time(th): setup time 이후에 데이터 값을 일정하게 유지해야 하는 시간 Delay(td): 입력 데이터에 의한 변화가 출력에 나타나는 데 걸리는 시간

Page 42: 제 2 장 컴퓨터의 논리 회로

순서 논리 회로 순서 논리 회로 - CPU- CPU

레지스터( 순서 논리 회로 )

연산 장치( 조합 논리 회로 )

입력 버스 1

입력 버스 2

출력 버스

순서논리 회로

조합논리 회로

1 ( (ts + th + td)REG + tALU )

최소 중앙 처리 장치 클록 사이클

Page 43: 제 2 장 컴퓨터의 논리 회로

컴퓨터의 논리 회로컴퓨터의 논리 회로 조합 논리 회로

반 가산기 (Half Adder), 전 가산기 (Full Adder) 반 감산기 (Half Subtractor), 전 감산기 (Full Subtractor) 부호 해독기 (Decoder) 멀티플렉서 (Multiplexer) 디멀티플렉서 (Demultiplexer)

순서 논리 회로 레지스터 (Register) 시프트 레지스터 (Shift Register) 계수기 (Counter)

Page 44: 제 2 장 컴퓨터의 논리 회로

1비트의 두 2 진수를 더하는 조합 논리 회로 2 입력 (A, B) 과 2 출력 ( 합 : S, 자리올림 : C) 로 구성 하단에서는 자리올림 비트를 고려하지 않음 연산수 (B) 와 피연산수 (A) 의 두 비트로 입력 출력은 두 수를 더한 결과인 합 (S) 과 자리올림 (C) 를 발생시키는 회로

회로 설계

컴퓨터의 논리 회로컴퓨터의 논리 회로 ::

반 가산기반 가산기 (Half Adder)(Half Adder)

Page 45: 제 2 장 컴퓨터의 논리 회로

A B S C

0 0 0 0

0 1 1 01 0 1 0

1 1 0 1

컴퓨터의 논리 회로컴퓨터의 논리 회로 ::

반 가산기반 가산기 (Half Adder)(Half Adder) 회로설계

(5) 구해진 부울 함수로부터 논리회로를 그린다

(1) 반가산기는 2 진수 1비트를 가산하는 회로(2) 더해지는 수 , 즉 피연산수의 입력변수를 A, 더하는 수 , 즉 피연산수의 입력변수를 B, 출력 변수의 합을 S, 자리 올림을 C 로 정의(3) 진리표를 구한다

(4) 각 출력변수에 대한 간소화된 부울 함수를 구한다

A

B

SC

B B’ A

A’ 1 1

S=A’B+AB’=A⊕B

B B’ A

A’ 1

C=AB

Ai

Bi

Si

Ci

Page 46: 제 2 장 컴퓨터의 논리 회로

컴퓨터의 논리 회로컴퓨터의 논리 회로 ::

전 가산기전 가산기 (Full Adder)(Full Adder)

(1) 2 진수 1비트를 가산하는 회로이며 반가산기와는 달리 자기 아랫단에서 올라오는 자리올림 ,즉 캐리를 포함하여 연산

(2) 더해지는 수 , 즉 피연산수의 입력변수를 A, 더하는 수 , 즉 피연산수의 입력변수를 B, 자기 아랫단 , 즉 하위 비트에서 올라오는 캐리를 C0 , 출력 변수의 합을 S, 자리 올림을 C1 으로 정의

연산수 (B) 와 피연산수 (A) 의 두 비트와 자기 아랫단에서 올라오는 캐리 (C0) 를 포함하여 세 개의 입력 비트들의 합을 구하는 조합 논리 회로 3 입력 (A, B) 과 2 출력으로 구성

회로설계A

B

SC1

C0 하위비트캐리

Page 47: 제 2 장 컴퓨터의 논리 회로

컴퓨터의 논리 회로컴퓨터의 논리 회로 ::

전 가산기전 가산기 (Full Adder)(Full Adder)(3) 진리표를 구한다

(4) 각 출력변수에 대한 간소화된 부울 함수를 구한다

A B C0 S C1

0 0 0 0 00 0 1 1 00 1 0 1 00 1 1 0 11 0 0 1 01 0 1 0 11 1 0 0 11 1 1 1 1

B’C0’ B’C0 BC0

BC0’A’

A 1 1 1 1

S = A’B’C0+A’BC0’+AB’C0’+ABC0 = (A’B+AB’)C0’+(A’B’+AB)C0 = (A⊕B)C0’+ (A⊕B)’C0 = XC0’+ XC0 = X⊕C0 = A⊕B⊕C0

C1 =AB + (A⊕B)C0

B’C0’ B’C0 BC0 BC0’

A’

A 1 1 1 1

Page 48: 제 2 장 컴퓨터의 논리 회로

컴퓨터의 논리 회로컴퓨터의 논리 회로 ::

전 가산기전 가산기 (Full Adder)(Full Adder)

(5) 구해진 부울 함수로부터 논리회로를 그린다

A

B S

C1

C0FA

SA

B

C0C1

Page 49: 제 2 장 컴퓨터의 논리 회로

감산기( Subtractor)

1비트의 두 2진수를 감산하는 조합 논리 회로 반감산기 : 2 입력(X, Y)과 2 출력(차 : D, 자리빌림 : B) 전감산기 : 3 입력 (Borrow considered)(X, Y, B0)과 2 출력 (차 : D, 자리빌림 : B1) 진리표

반감산기 (Half Subtractor : HS)

전감가산기 (Full Subtractor : FS)

X

Y

DB

반감산기

X

Y

DB1

B0 상위비트빌림

전감산기

X Y D B

0 0 0 0

0 1 1 11 0 1 0

1 1 0 0

X Y B0 D B1

0 0 0 0 00 0 1 1 10 1 0 1 10 1 1 0 11 0 0 1 01 0 1 0 01 1 0 0 01 1 1 1 1

컴퓨터의 논리 회로컴퓨터의 논리 회로 ::

감산기감산기 (Subtractor)(Subtractor)

Page 50: 제 2 장 컴퓨터의 논리 회로

디코더 (Decoder) n비트의 2 진 입력을 받아 2n 개의 출력 중 하나를 활성화 활용 : 메모리 칩 선택 신호 , 명령어 해독과 제어 장치 등에 사용 n×2n 디코더 : n 개의 입력과 2n 개의 출력 2 × 4 디코더를 설계

• 1. 입출력 변수의 개수를 결정 /변수를 할당 2 입력 (A, B), 4 출력 (D0, D1, D2, D3)• 2. 진리표를 작성 • 3. 맵을 이용한 간소화• 4. 논리회로 작성

A B D0 D1 D2 D3

0 0 1 0 0 0

0 1 0 1 0 01 0 0 0 1 0

1 1 0 0 0 1

D3

A

BD2

D1

D0

2×4 디코더

컴퓨터의 논리 회로컴퓨터의 논리 회로 ::

부호 해독기부호 해독기 (Decoder)(Decoder)

Page 51: 제 2 장 컴퓨터의 논리 회로

디코더 (Decoder) 회로동작 제어를 위해 인에이블 (e

nable) 입력 사용 예 : 그림 [2-22] enable input = 0, 모든 출력 0 enable input = 1, 정상 동작

인에이블 입력을 가지는 3×8 디코더

A

B

D0

Enable

C D1

D2

D3

D4

D5

D6

D7

3X8디코더Input Output

Enable블록도

컴퓨터의 논리 회로컴퓨터의 논리 회로 ::

부호 해독기부호 해독기 (Decoder)(Decoder)

Page 52: 제 2 장 컴퓨터의 논리 회로

디코더 (Decoder) 를 이용한 조합 논리 회로 설계 n 개의 입력변수들에 대한 2n 개의 최송항 표현 이를 이용하여 임의의 조합 논리 회로 설계시 디코더를 사용 즉 , 모든 부울함수는 최소항의 합형으로 표현 가능 디코더 최소항 표현 , 합 OR 게이트 이용 n 개의 입력과 m 개의 출력을 가지는 임의의 조합 회로를 설계하려면 n × 2n 디코더와 m 개의 OR 게이트로 구현 가능 예 : 전가산기를 디코더로 설계 ( 입력변수 3 개 , 출력변수 2 개 )

S(A,B,C0) = ∑(1, 2, 4, 7)

C1(A,B,C0) = ∑(3, 5, 6, 7)

S(A,B,C0) = ∑(1, 2, 4, 7)

C1(A,B,C0) = ∑(3, 5, 6, 7)

3X8디코더

A

B

C0 20

S

C1

01234567

21

22

컴퓨터의 논리 회로컴퓨터의 논리 회로 ::

부호 해독기부호 해독기 (Decoder)(Decoder)

Page 53: 제 2 장 컴퓨터의 논리 회로

인코더 (Encoder) 디코더의 반대 기능을 수행 , OR 게이트로 구성 2n 개의 입력과 n 개의 출력 8진 × 2 진 인코더 설계

• 1. 입출력 변수의 개수를 결정 /변수를 할당 8 입력 (D0, D1, D2, D3, D4, D5, D6, D7), 3 출력 (A,B,C)• 2. 진리표를 작성

• 3. 진리표로부터 출력 부울 함수를 구하면 A = D4 + D5 + D6 + D7 B = D2 + D3 + D6 + D7 C = D1 + D3 + D5 + D7

• 4. 논리회로 작성

D0 D1 D2 D3 D4 D5 D6 D7 A B C

1 0 0 0 0 0 0 0 0 0 00 1 0 0 0 0 0 0 0 0 10 0 1 0 0 0 0 0 0 1 00 0 0 1 0 0 0 0 0 1 10 0 0 0 1 0 0 0 1 0 00 0 0 0 0 1 0 0 1 0 10 0 0 0 0 0 1 0 1 1 00 0 0 0 0 0 0 1 1 1 1

컴퓨터의 논리 회로컴퓨터의 논리 회로 ::

인코더인코더 (Encoder)(Encoder)

Page 54: 제 2 장 컴퓨터의 논리 회로

D0A = D4+D5+D6+D7

D3

D2

D1

D4

D5

D6

D7

B = D2+D3+D6+D7

C = D1+D3+D5+D7

입력 D0 은 어떤 OR 게이트에도 연결되지 않았는데 이 경우에

2 진 출력은 모두 0 이 되어야 하기 때문이다 . 회로에서 인코더의 입력은 단지 하나의 입력만이 1 이 된다고 가정 . 왜냐하면 이 회로에서 입력은 8개이므로 28=256 가지의 입력 조합이 나타난다 . 그러나 이들 중 단지 8개만이 의미 있는 입력이므로 다른 입력들은 전부 무관조건이 된다 .

8 진 -2 진 인코더

컴퓨터의 논리 회로컴퓨터의 논리 회로 ::

인코더인코더 (Encoder)(Encoder)

Page 55: 제 2 장 컴퓨터의 논리 회로

멀티플렉서 (Multiplexer) 여러 개의 입력선 중의 한 선으로부터 정보를 받아들여 단일의 출력선 으로 정보를 출력하는 조합 논리 회로 특정 입력선의 선택은 선택선 (Select line) 에 의해 제어 2n 개의 입력과 1 개의 출력 , n 개의 선택선 4× 1 멀티플렉서 설계

• 1. 입출력 변수의 개수를 결정 /변수를 할당 4 입력 (I0, I1, I2, I3), 1 출력 (Y), 2 선택선 (S0, S1) • 2. 함수표 ( 진리표 ) 를 작성

OR 게이트의 역할 : 선택된 입력과 출력을 연결시켜 주는 통로

S0 S1 Y0 0 I00 1 I11 0 I21 1 I3

S0

Y

S1

I3

I2

I1

I0

• 3. 논리회로 작성

컴퓨터의 논리 회로컴퓨터의 논리 회로 ::

멀티플렉서멀티플렉서 (Multiplexer)(Multiplexer)

Page 56: 제 2 장 컴퓨터의 논리 회로

4개의 2×1 멀티플렉서 (Multiplexer) Enable input = 0 , 정상 동작 선택선 S 와 인에이블 입력선 E 는 공통으로 인가

S

0

1E

A02X1MUX

B0

Y0

S

0

1E

A12X1MUX

B1

Y1

S

0

1E

A22X1MUX

B2

Y2

S

0

1E

A32X1MUX

B3

Y3

ES

E S Y i

1 X 0

0 0 Ai

0 1 Bi

(a) 블록도

(b) 함수표

컴퓨터의 논리 회로컴퓨터의 논리 회로 ::

멀티플렉서멀티플렉서 (Multiplexer)(Multiplexer)

Page 57: 제 2 장 컴퓨터의 논리 회로

디멀티플렉서 (DeMultiplexer) 멀티플렉서의 역기능을 수행 하나의 입력선과 2n 개의 출력선 , n 개의 선택선으로 구성 1×4 디멀티플렉서

(c) 블록도

(b) 함수표

S0S1

I

Y0

Y1

Y2

Y3

(a) 회로도

S0 S1 Y0 0 Y0

0 1 Y1

1 0 Y2

1 1 Y3

1X4DEMUX

I

S1

선택

입력 출력

0

2

1

3S0

컴퓨터의 논리 회로컴퓨터의 논리 회로 ::

디멀티플렉서디멀티플렉서 (Demultiplexer)(Demultiplexer)

Page 58: 제 2 장 컴퓨터의 논리 회로

컴퓨터의 논리 회로컴퓨터의 논리 회로 ::

시프트 레지스터시프트 레지스터

J Q

C JKF0

K Q’

J Q

C JKF0

K Q’

J Q

C JKF0

K Q’

J Q

C JKF0

K Q’

IL OR

C

Page 59: 제 2 장 컴퓨터의 논리 회로

직렬직렬 // 병렬 입병렬 입 // 출력출력시프트 레지스터시프트 레지스터J Q

C JKF0

K Q’

J Q

C JKF1

K Q’

J Q

C JKF2

K Q’

J Q

C JKF3

K Q’

C

PL( 병렬 기억 )LS( 왼쪽 시프트 )

RS( 오른쪽 시프트 )Li I0 I1 I2 Ri I3 병렬 입력

X0 X1 X2 X3

Lo Ro

병렬 출력

Page 60: 제 2 장 컴퓨터의 논리 회로

컴퓨터 논리 회로컴퓨터 논리 회로 ::

계수기계수기 (Counter)(Counter)

J Q

C JKF0

K Q’

J Q

C JKF1

K Q’

J Q

C JKF2

K Q’

J Q

C JKF3

K Q’

C

+V X2 X4 X8 X16

모듈로 16 2 진 계수기 (Modulo-16 Binary Counter)0000-1000-0100-… -1111-0000-…

Page 61: 제 2 장 컴퓨터의 논리 회로

모듈로 모듈로 16 216 2 진 계수기진 계수기15 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

C

F0

F1

F2

F3

C

X2

X4

X8

X16

C/2

C/4

C/8

C/16

Page 62: 제 2 장 컴퓨터의 논리 회로

집적 회로집적 회로 (Integrated (Integrated Circuit)Circuit)

하이브리드 (Hybrid) IC 와 모노리틱 (Monolithic) IC 특성

크기가 작음 속도가 빠름 전력 소모가 적음 수명이 길고 , 신뢰도가 높음 외부 회로와의 접속이 간결함 경제성이 있음

집적도에 따른 분류• SSI, MSI, LSI, VLSI, WSI

포장 방법에 따른 분류• DIP(dual inline package), QUIP(quad inline package), PGA(pin grid

array), ...

반도체 기술

하이브리드 모노리틱

후막형 박막형 양극형 단극형 (thick film)(thin film) (bipolar) (unipolar)

TTL ECL IIL MOS (P, N, C, H)

Page 63: 제 2 장 컴퓨터의 논리 회로

집적 회로의 종류집적 회로의 종류DIP QUIP PGA

Pin

PCB

SMT

Page 64: 제 2 장 컴퓨터의 논리 회로

범용 범용 LSILSI 다용도 논리 회로 부품

ROM(Read Only Memory) PLA(Programmable Logic Array) 마이크로프로세서 (Microprocessors)

범용 부품의 장점

대규모 생산 (mass production) 으로 인한 경제성 유지보수의 경제성

• 유지해야 할 부품 (spare parts) 의 종류가 적음• 고장 수리가 편리

Page 65: 제 2 장 컴퓨터의 논리 회로

범용 범용 LSI:LSI:

ROMROM•특성

기억시킨 내용을 변경 (write) 시킬 수는 없으나 , 빠르게 읽을 수 있음 쓰기 (Writing)

• 마스크 (mask) 를 제작하여야 함• 마스크 제작을 위하여 논리 기능을 캐노니칼 곱의 덧셈 (sum of canonical product terms) 형식으로 나타내야 함

캐노니칼 곱 (Canonical Products):n 개의 변수로 나타낸 부울 함수의 경우 , 모든 곱셈항을 n 개의 변수로 나타낸 것

예 : 3 개의 변수 A, B, C 로 나타낸 곱셈항

B ABC + A’BC + ABC’ + A’BC’AB ABC + ABC’

Page 66: 제 2 장 컴퓨터의 논리 회로

범용 범용 LSI:LSI:

ROMROM 에 의한 논리기능 구현에 의한 논리기능 구현X1 = A’B’ + AB’C A’B’C + A’B’C’ + AB’CX2 = A’C’ A’BC’ + A’B’C’X3 = BC + AB’C’ ABC + A’BC + AB’C’X4 = AB’ + A’BC’ AB’C + AB’C’ + A’BC’X5 = AB ABC + ABC’

주소 단어 ABC X1 X2 X3 X4 X5 000 1 0 0 0 0 001 1 1 0 0 0 010 0 1 0 1 0 011 0 0 1 0 0 100 0 0 1 1 0 101 1 0 0 1 0 110 0 0 0 0 1 111 0 0 1 0 1

문젯점변수가 하나 증가하면 ROM 의 기억 용량을 두 배로 증가 시켜야 함

Page 67: 제 2 장 컴퓨터의 논리 회로

범용 범용 LSI:LSI:

ROMROM 의 종류의 종류 ROM

기억시킨 내용을 변경시킬 수 없음 공장에서 마스크를 사용하여 제조과정의 마지막 부분에서 정보를 기억시킴 정보를 기억시키지 않은 ROM 은 가격이 싸지만 정보를 기억시키는 비용은 큼 대량 생산에 적합함

PROM 기억시킨 내용을 변경시킬 수 없음 PROM 프로그래머라는 장치를 사용하여 정보를 기억시킴 , 실험실 환경에서 가능 정보를 기억시키지 않은 PROM 은 ROM 보다 비싸지만 정보를 기억시키는 비용은 ROM 보다 저렴함

적은 수의 시스템 생산에 적합함

EPROM 기억시킨 내용을 변경시킬 수 있음 - UV 광선이나 전기적으로 기억된 내용을 지운 다음에

다시 사용할 수 있음 ) PROM 프로그래머를 사용하여 정보를 기억시킴 정보를 기억시키지 않은 EPROM 은 PROM 보다 비싸지만정보를 기억시키는 비용은 저렴함 개발 단계에 사용하기 적합함

Page 68: 제 2 장 컴퓨터의 논리 회로

범용 범용 LSI:LSI:

Programmable Logic Programmable Logic ArrayArrayPLA 의 구조

AND-배열• PLA 의 입력을 받음• 수직선은 AND 게이트를 나타냄

OR-배열• PLA 의 출력을 발생• 수평선은 OR 게이트를 나타냄

I

I

I

...

...

...

A

B

P

X1X2X3

Xm

입력

출력...

AND- 행렬

OR- 행렬

논리 기능의 구현 ;• 논리 기능을 최소 곱셈항의 덧셈

(Minimal Sum of Products) 형식으로 나타낸 후에 구현

Page 69: 제 2 장 컴퓨터의 논리 회로

범용 범용 LSI:LSI:

마이크로프로세서마이크로프로세서 하나의 집적회로 칩에 구현한 중앙 처리 장치 (CPU on a Chip)

마이크로프로세서는 프로그램을 통하여 다양한 기능을 구현시킬 수 있 는 범용 LSI칩이다 .

8, 16, 32, 64-비트 중앙 처리 장치가 있음 다양한 보조 칩이 있음 마이크로프로세서 중에는 마이크로프로그램이 가능한 것도 있음

현대의 고성능 마이크로프로세서에는 고성능 컴퓨터 구조 설계 기법이 포함됨

캐쉬 (Cache) 가상 기억 체제 (Virtual Storage System) 파이프라인 (Pipeline) 복수 연산 장치 (Multiple ALUs)