컴퓨터의 논리 회로
컴퓨터의 논리 회로 강의 내용 디지탈 논리 회로(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)
컴퓨터의 논리 회로 제2장 강의 내용(계속) 컴퓨터의 기능적 회로 블록 집적 회로(Integrated Circuit) 반 가산기(Half Adder) 전 가산기(Full Adder) 부호 해독기(Decoder) 멀티플렉서(Multiplexer) 디멀티플렉서(Demultiplexer) 레지스터(Register) 시프트 레지스터(Shift Register) 계수기(Counter) 집적 회로(Integrated Circuit) 범용 대규모 집적 회로(LSI) ROM - ROM, PROM, EPROM PLA 마이크로프로세서(Microprocessor)
디지탈 논리 회로 회로 디지탈 논리 회로(Digital Logic Circuit) 2 종류의 디지탈 회로 순서 논리 회로 아날로그(Analog) 회로와 디지탈(Digital) 회로 디지탈 논리 회로(Digital Logic Circuit) 디지탈 신호(불연속적 신호)로 나타낸 정보를 처리하는 회로 예: 2진 디지탈 회로 - 정보는 0과 1 두 가지로 표현 2 종류의 디지탈 회로 조합(Combinational) 논리 회로와 순서(Sequential) 논리 회로 조합 논리 회로 출력 값은 입력 값에 의하여만 결정됨 예: 게이트(AND, OR, Inverter, NAND, NOR, XOR, 등) 순서 논리 회로 출력 값은 회로의 상태(기억된 정보)와 입력 값에 의하여 결정됨 플립플롭(Flip Flop: FF), 래치(Latch) Volt 5 3 1 Value 1 undefined Value 0
논리 회로의 기능 표시방법 부울 대수(Boolean algebra) 논리 덧셈 : OR 회로 논리 곱셈 : AND 회로 논리 부정 : 인버터(NOT) 부울 함수(Boolean Function) X = A + B’C (B’ = B ) Truth Table Logic Diagram A B X 0 0 0 0 1 1 1 0 1 1 1 1 A B X 0 0 0 0 1 0 1 0 0 1 1 1 A X 0 0 1 1 A B C X 0 0 0 0 0 0 1 1 0 1 0 0 0 1 1 0 1 0 0 1 1 0 1 1 1 1 0 1 1 1 1 1 A B C Z X Y
부울 대수의 액시옴(Axiom) x + 0 = x x . y = y . x x . 0 = 0 x + (y + z) = (x + y) + z x + 1 = 1 x . (y . z) = (x . y) . z x . 1 = x x . (y + z) = x . y + x . z x + 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’)’ = x x + y = y + x
조합 논리 회로: 게이트 도형과 진위표 X = A・B AND 게이트 X = A∧B OR 게이트 X = A + B X = A∨B 조합 논리 회로: 게이트 도형과 진위표 A B X 0 0 0 0 1 0 1 0 0 1 1 1 X = A・B X = A∧B AND 게이트 A B X OR 게이트 A B X = A + B X = A∨B A B X 0 0 0 0 1 1 1 0 1 1 1 1 X A X 0 0 1 1 버퍼(Buffer) A X X = A
조합 논리 회로: 게이트 도형과 진위표 X = (A・B)’ X = (A・B) X = (A + B)’ X = (A + B) 조합 논리 회로: 게이트 도형과 진위표 A B X 0 0 1 0 1 1 1 0 1 1 1 0 X = (A・B)’ X = (A・B) A B NAND 게이트 X A B X 0 0 1 0 1 0 1 0 0 1 1 0 X = (A + B)’ X = (A + B) NOR 게이트 A B X X = A’ X = A A X 0 1 1 0 인버터(Inverter) A X 버블
조합 논리 회로: 게이트 도형과 진위표 X = A ⊕ B X = A・B’ + A’・B X = (A ⊕ B)’ 조합 논리 회로: 게이트 도형과 진위표 배태적 OR(Exclusive OR) X = A ⊕ B X = A・B’ + A’・B A B X 0 0 0 0 1 1 1 0 1 1 1 0 A B X 배태적 NOR (Exclusive NOR) A B X 0 0 1 0 1 0 1 0 0 1 1 1 X = (A ⊕ B)’ X = A’・B’ + A・B A B X
논리 회로의 기능 표시방법 X = A + B’・C 부울 함수(Boolean Function) X = A + B’C (B’ = B ) Truth Table Logic Diagram A B C X 0 0 0 0 0 0 1 1 0 1 0 0 0 1 1 0 1 0 0 1 1 0 1 1 1 1 0 1 1 1 1 1 A B C Z X Y X = A + Y Y = Z・C Z = B’ X = A + B’・C
논리 회로의 기능 표시방법 예 X = (A・B) + (A・B’・C) + (A’・C’) X1 A X B X2 C X3 X = X1 + X2 + X3 X1 = A・B X2 = A・B’・C X3 = A’・C’ X = (A・B) + (A・B’・C) + (A’・C’)
논리 회로의 기능 표시방법 예 2.1 X1 A B X2 X A X B X = ((A・(B’))’・(B’))’ = (A・(B’)) + B = (A・B’) + B = B + (A・B’) = (B + A) ・(B + B’) = (B + A) ・ 1 = B + A X = (X1・ X2)’ X1 = (A・ X2)’ X2 = B’ X = ((A・(B’))’・(B’))’ A X B
조합 논리 회로: 완전 집합 게이트의 완전 집합(Complete Set) 조합 논리 회로: 완전 집합 게이트의 완전 집합(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 게이트
부울 함수의 간소화 부울 식 F = xyz + xyz F = x(yz + yz) = x(y ⊕ z) 부울 함수의 간소화 정리와 가설을 이용한 간소화 방법 카노우 맵(Karnaugh Map)을 이용한 간소화
부울 함수의 간소화 (1) 정리와 가설을 이용한 간소화 방법 A B F = AB’ +B A F = A + B B F = AB’ + B = B + AB’ (9) 적용 = (B + A)(B + B’) (14) 적용 = (B + A)・1 (7) 적용 = B + A (4) 적용 = A + B (9) 적용 A F = A + B B
부울 함수의 간소화 (2) 카노우 맵을 이용한 간소화 카노우 맵(Karnaugh map) 사각형으로 된 그림으로 곱들의 합을 단순화 (예) x, y로 구성된 최소항 xy, xy, xy, xy의 카노우 맵
부울 함수의 간소화 【예】부울식을 카노우 맵으로 그려라.
부울 함수의 간소화 카노우 맵에서 두 개의 인접된 칸이 1 : 최소항은 두 변수 중에서 하나만으로 표현 가능 [예] xy+xy=(x+x) y = y 인접하는 네 개의 칸이 1 : 네 개의 최소항은 한 개의 최소항으로 합성
부울 함수의 간소화 【예】부울식을 카노우 맵을 사용하여 간소화
부울 함수의 간소화 【예】부울 함수를 간소화 F = A’B’ + AB’ + AB B B’ (1) 변수의 개수에 따라 카노우 맵을 만든다 A A’ (2) 주어진 부울 함수의 각 항에 대응하는 카노우 맵의 셀에 1, 0을 기입 B B’ 1 1 0 1 A A A’ (3) 묶인 각 그룹을 OR연산자로 묶는다 B’ F = A + B’
부울 함수의 간소화 세 개의 변수를 가진 부울식을 카노우 맵으로 표현 여덟 개의 칸이 필요 각 칸은 여덟 개의 최소항을 표현 인접하는 두 개의 칸이 합성 가능하면 최소화 맨 왼쪽 칸과 맨 오른쪽 칸은 붙어 있는 것으로 생각
부울 함수의 간소화 인접된 칸 중에서 최대를 구함 최대 인접된 칸을 취하는 방법이 다양하므로 구한 최소항도 다양
부울 함수의 간소화 【예】카노우 맵을 사용하여 간소화
부울 함수의 간소화 [풀이]
부울 함수의 간소화 【예】간소화된 회로를 구하라 (1) (2)
부울 함수의 간소화 [풀이]
부울 함수의 간소화 네 개의 변수(variable)로 표현된 카노우 맵 16개의 칸으로 나누어진다. 16개의 최소항을 표현
부울 함수의 간소화 【예】카노우 맵을 사용하여 부울식을 간소화
부울 함수의 간소화 [풀이]
결선 논리 회로(Wired 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)는 그 자체가 구동기이다.
TTL(OC) 결선 논리 회로: 결선 AND 회로 +Volt R A S1 B S2 NAND WL X = (A . S1)’ . (B . S2)’ NAND A S1 B S2 NAND OR X = (((A . S1)’)’ + ((B . S2)’)’)’ NAND A S1 B S2 NAND OR I X = ((A . S1) + (B . S2))’ NAND
결선 논리 회로: 3상 버퍼 버스 접속 응용 S S A X A X A S X 0 0 HiZ 1 0 HiZ 0 1 0 1 1 1 결선 논리 회로: 3상 버퍼 S S A X A X A S X 0 0 HiZ 1 0 HiZ 0 1 0 1 1 1 A S X 1 1 HiZ 1 0 HiZ 1 0 0 0 0 1 버스 접속 응용 A SA B SB P SP BUS
조합 논리 회로 반 가산기(Half Adder) 전 가산기(Full Adder) 연산기(ALU) 부호 해독기(Decoder) 멀티플렉서(Multiplexer) 디멀티플렉서(Demultiplexer) 패리티 비트 발생기(Parity Generator) 패리티 비트 검사기(Parity Checker) 부호 변환기(Code Converter)
순서 논리 회로 순서 논리 회로 요소(FF 혹은 래치)를 포함한 논리 회로 플립플롭(Flip Flop: FF) 1 비트 기억 장소 2 가지의 안정된 상태를 가진 장치 플립플롭의 2 가지 안정된 상태(State) 0-상태 1-상태 Q=0 Q’=1 Q=1 Q’=0
순서 논리 회로: SR-래치(SR-Latch) I Q’ OR S Q R Q’ SRL OR I Q 특성표(characteristic table) S R Q Comment 0 0 Q0 불변 0 1 0 리세트(reset) 1 0 1 세트(set) 1 1 - 금지 비동기적(Asynchronous) 동작 입력 변화에 반응 많은 수의 FF이 있는 회로의 경우에는 신호 전달의 지연시간이 일정하지 않으므로 어느 FF의 상태가 언제 변하는지 알 수 없기 때문에 대단히 위험한 동작임 동기적(Synchronous) 동작이 안전
순서 논리 회로: 동기(Synchronous) SR-래치 동기 SR-래치(Synchronous SR-Latch) S R AND I Q’ OR S Q R Q’ Clock C SRL OR I Q AND 특성표 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 - - 금지
순서 논리 회로: D-래치(D-Latch) 동기 SR-래치와 같으나, 입력 단자에 입력 신호가 S=R=1이 되지 못하게 하는 외부 회로가 있음 D E S Q Q R Q’ Q’ D Q E Q’ C SRL DL 특성표 D E Q Q’ d 0 Q0 Q0’ 0 1 0 1 1 1 1 0
순서 논리 회로: D-플립플롭(D-Flip Flop) 단자에 가해진 입력 정보를 기억시킨다. 2 개의 동기 SR-래치를 이용하여 다음과 같이 합성할 수 있다 S2 Q2 Q R2 Q2’ Q’ D C S1 Q1 R1 Q1’ D Q C Q’ C1 SRL C2 SRL DFF 특성표 D C Q Q’ d 0 Q0 Q0’ 0 0->1 0 1 1 0->1 1 0
순서 논리 회로: JK-플립플롭(JK-Flip Flop) JK-플립플롭은 SR-래치의 입력 신호의 값이 S=R=1 인 것을 유효한 입력이 되게 한다. JK-플립플롭은 2 개의 동기 SR-래치를 사용하여 다음 과 같이 합성할 수 있다 J Q C JKF K Q’ S2 Q2 Q R2 Q2’ Q’ S1 Q1 R1 Q1’ J K C AND C1 SRL C2 SRL AND 특성표 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
래치와 플립플롭 래치 플립플롭 클록 펄스의 유효 레벨에서 데이터 입력 단자에 가해지는 신호의 값을 기억시킴 클록 펄스의 유효 전환 직전에 입력 단자에 가해지는 신호의 값을 기억시킴 데이터 경로의 지연시간을 잘 알 수 없을 때에는 플립플롭이나 래치의 입력 단자에 유효 데이터가 나타나는 정확한 시점을 예측하기 어렵다. 플립플롭을 사용하려면 클록 펄스의 유효 전환을 언제 시켜야 하는가를 정확히 알아야 하므로 플립플롭은 사용하기가 어렵다. Data clock latch F/F
순서 논리 회로 순서 논리 회로 - 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): 입력 데이터에 의한 변화가 출력에 나타나는 데 걸리는 시간
순서 논리 회로 - CPU 1 ( (ts + th + td)REG + tALU ) 최소 중앙 처리 장치 클록 사이클 입력 버스 1 입력 버스 2 레지스터 (순서 논리 회로) 순서 논리 회로 조합 논리 회로 연산 장치 (조합 논리 회로) 출력 버스 1 ( (ts + th + td)REG + tALU ) 최소 중앙 처리 장치 클록 사이클
컴퓨터의 논리 회로 조합 논리 회로 순서 논리 회로 반 가산기 (Half Adder), 전 가산기(Full Adder) 반 감산기 (Half Subtractor), 전 감산기(Full Subtractor) 부호 해독기(Decoder) 멀티플렉서(Multiplexer) 디멀티플렉서(Demultiplexer) 순서 논리 회로 레지스터(Register) 시프트 레지스터(Shift Register) 계수기(Counter)
컴퓨터의 논리 회로: 반 가산기(Half Adder) 1비트의 두 2진수를 더하는 조합 논리 회로 2 입력(A, B)과 2 출력(합 : S, 자리올림 : C)로 구성 하단에서는 자리올림 비트를 고려하지 않음 연산수(B)와 피연산수(A)의 두 비트로 입력 출력은 두 수를 더한 결과인 합(S)과 자리올림 (C)를 발생시키는 회로 회로 설계
컴퓨터의 논리 회로: 반 가산기(Half Adder) 회로설계 (1) 반가산기는 2진수 1비트를 가산하는 회로 (2) 더해지는 수, 즉 피연산수의 입력변수를 A, 더하는 수, 즉 피연산수의 입력변수를 B, 출력 변수의 합을 S, 자리 올림을 C로 정의 (3) 진리표를 구한다 (4) 각 출력변수에 대한 간소화된 부울 함수를 구한다 B B’ B B’ A A’ 1 A A’ 1 S=A’B+AB’=A⊕B C=AB (5) 구해진 부울 함수로부터 논리회로를 그린다 Ai Bi Si Ci
컴퓨터의 논리 회로: 전 가산기(Full Adder) 연산수(B)와 피연산수(A)의 두 비트와 자기 아랫단에서 올라오는 캐리(C0)를 포함하여 세 개의 입력 비트들의 합을 구하는 조합 논리 회로 3 입력(A, B)과 2 출력으로 구성 회로설계 (1) 2진수 1비트를 가산하는 회로이며 반가산기와는 달리 자기 아랫단에서 올라오는 자리올림,즉 캐리를 포함하여 연산 (2) 더해지는 수, 즉 피연산수의 입력변수를 A, 더하는 수, 즉 피연산수의 입력변수를 B, 자기 아랫단, 즉 하위 비트에서 올라오는 캐리를 C0 ,출력 변수의 합을 S, 자리 올림을 C1으로 정의
컴퓨터의 논리 회로: 전 가산기(Full Adder) (3) 진리표를 구한다 (4) 각 출력변수에 대한 간소화된 부울 함수를 구한다 B’C0’ B’C0 BC0 BC0’ B’C0’ B’C0 BC0 BC0’ A’ A 1 1 1 1 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
컴퓨터의 논리 회로: 전 가산기(Full Adder) (5) 구해진 부울 함수로부터 논리회로를 그린다
컴퓨터의 논리 회로: 감산기(Subtractor) 1비트의 두 2진수를 감산하는 조합 논리 회로 반감산기 : 2 입력(X, Y)과 2 출력(차 : D, 자리빌림 : B) 전감산기 : 3 입력 (Borrow considered)(X, Y, B0)과 2 출력 (차 : D, 자리빌림 : B1) 진리표 반감산기(Half Subtractor : HS) 전감가산기(Full Subtractor : FS) 반감산기 전감산기
컴퓨터의 논리 회로: 부호 해독기(Decoder) n비트의 2진 입력을 받아 2n 개의 출력 중 하나를 활성화 활용 : 메모리 칩 선택 신호, 명령어 해독과 제어 장치 등에 사용 n×2n 디코더 : n개의 입력과 2n개의 출력 2 × 4 디코더를 설계 1. 입출력 변수의 개수를 결정/변수를 할당 2 입력 (A, B), 4 출력(D0, D1, D2, D3) 2. 진리표를 작성 3. 맵을 이용한 간소화 4. 논리회로 작성 2×4 디코더
컴퓨터의 논리 회로: 부호 해독기(Decoder) 회로동작 제어를 위해 인에이블(enable) 입력 사용 예 : 그림 [2-22] enable input = 0, 모든 출력 0 enable input = 1, 정상 동작 인에이블 입력을 가지는 3×8 디코더 블록도
컴퓨터의 논리 회로: 부호 해독기(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)
컴퓨터의 논리 회로: 인코더(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. 논리회로 작성
컴퓨터의 논리 회로: 인코더(Encoder) 8진-2진 인코더 입력 D0은 어떤 OR 게이트에도 연결되지 않았는데 이 경우에 2진 출력은 모두 0이 되어야 하기 때문이다. 회로에서 인코더의 입력은 단지 하나의 입력만이 1이 된다고 가정. 왜냐하면 이 회로에서 입력은 8개이므로 28=256가지의 입력 조합이 나타난다. 그러나 이들 중 단지 8개만이 의미 있는 입력이므로 다른 입력들은 전부 무관조건이 된다.
컴퓨터의 논리 회로: 멀티플렉서(Multiplexer) 여러 개의 입력선 중의 한 선으로부터 정보를 받아들여 단일의 출력선 으로 정보를 출력하는 조합 논리 회로 특정 입력선의 선택은 선택선(Select line)에 의해 제어 2n개의 입력과 1개의 출력, n개의 선택선 4× 1 멀티플렉서 설계 1. 입출력 변수의 개수를 결정/변수를 할당 4 입력 (I0, I1, I2, I3), 1 출력(Y), 2 선택선(S0, S1) 2. 함수표(진리표)를 작성 OR게이트의 역할 : 선택된 입력과 출력을 연결시켜 주는 통로 3. 논리회로 작성
컴퓨터의 논리 회로: 멀티플렉서(Multiplexer) Enable input = 0 , 정상 동작 선택선 S와 인에이블 입력선 E는 공통으로 인가 (b) 함수표 (a) 블록도
컴퓨터의 논리 회로: 디멀티플렉서(Demultiplexer) 멀티플렉서의 역기능을 수행 하나의 입력선과 2n개의 출력선, n개의 선택선으로 구성 1×4 디멀티플렉서 (b) 함수표 (a) 회로도 (c) 블록도
컴퓨터의 논리 회로: 시프트 레지스터 IL OR C J Q C JKF0 K Q’ J Q C JKF0 K Q’ J Q 컴퓨터의 논리 회로: 시프트 레지스터 IL J Q C JKF0 K Q’ J Q C JKF0 K Q’ J Q C JKF0 K Q’ J Q C JKF0 K Q’ OR C
직렬/병렬 입/출력 시프트 레지스터 C PL(병렬 기억) LS(왼쪽 시프트) RS(오른쪽 시프트) X0 X1 X2 X3 병렬 출력 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 Lo Ro PL(병렬 기억) LS(왼쪽 시프트) RS(오른쪽 시프트) Li I0 I1 I2 Ri I3 병렬 입력
컴퓨터 논리 회로: 계수기(Counter) +V X2 X4 X8 X16 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 모듈로 16 2진 계수기(Modulo-16 Binary Counter) 0000-1000-0100-… -1111-0000-…
모듈로 16 2진 계수기 15 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 C F0 F1 F2 F3 X2 X4 X8 X16 C/2 C/4 C/8 C/16
집적 회로(Integrated 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)
집적 회로의 종류 DIP QUIP PGA Pin PCB SMT
범용 LSI 다용도 논리 회로 부품 ROM(Read Only Memory) PLA(Programmable Logic Array) 마이크로프로세서(Microprocessors) 범용 부품의 장점 대규모 생산(mass production)으로 인한 경제성 유지보수의 경제성 유지해야 할 부품(spare parts)의 종류가 적음 고장 수리가 편리
범용 LSI: ROM 특성 기억시킨 내용을 변경(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’
범용 LSI: ROM에 의한 논리기능 구현 문젯점 변수가 하나 증가하면 ROM의 기억 용량을 두 배로 증가 시켜야 함 X1 = A’B’ + AB’C A’B’C + A’B’C’ + AB’C X2 = 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의 기억 용량을 두 배로 증가 시켜야 함
범용 LSI: ROM의 종류 ROM PROM EPROM 기억시킨 내용을 변경시킬 수 없음 공장에서 마스크를 사용하여 제조과정의 마지막 부분에서 정보를 기억시킴 정보를 기억시키지 않은 ROM은 가격이 싸지만 정보를 기억시키는 비용은 큼 대량 생산에 적합함 PROM PROM 프로그래머라는 장치를 사용하여 정보를 기억시킴, 실험실 환경에서 가능 정보를 기억시키지 않은 PROM은 ROM보다 비싸지만 정보를 기억시키는 비용은 ROM보다 저렴함 적은 수의 시스템 생산에 적합함 EPROM 기억시킨 내용을 변경시킬 수 있음 - UV 광선이나 전기적으로 기억된 내용을 지운 다음에 다시 사용할 수 있음) PROM 프로그래머를 사용하여 정보를 기억시킴 정보를 기억시키지 않은 EPROM은 PROM보다 비싸지만정보를 기억시키는 비용은 저렴함 개발 단계에 사용하기 적합함
범용 LSI: Programmable Logic Array PLA의 구조 AND-배열 PLA의 입력을 받음 수직선은 AND 게이트를 나타냄 OR-배열 PLA의 출력을 발생 수평선은 OR 게이트를 나타냄 AND-행렬 ... A B P I 입력 I ... I 논리 기능의 구현; 논리 기능을 최소 곱셈항의 덧셈 (Minimal Sum of Products) 형식으로 나타낸 후에 구현 X1 X2 X3 Xm 출력 ... ... OR-행렬
범용 LSI: 마이크로프로세서 하나의 집적회로 칩에 구현한 중앙 처리 장치(CPU on a Chip) 마이크로프로세서는 프로그램을 통하여 다양한 기능을 구현시킬 수 있 는 범용 LSI칩이다. 8, 16, 32, 64-비트 중앙 처리 장치가 있음 다양한 보조 칩이 있음 마이크로프로세서 중에는 마이크로프로그램이 가능한 것도 있음 현대의 고성능 마이크로프로세서에는 고성능 컴퓨터 구조 설계 기법이 포함됨 캐쉬(Cache) 가상 기억 체제(Virtual Storage System) 파이프라인(Pipeline) 복수 연산 장치(Multiple ALUs)