디지털 논리회로 1-5강

yoneeki·2025년 4월 6일

knou

목록 보기
13/14

디지털논리회로 1강

디지털 시스템과 데이터 표현


1. 디지털 시스템 개요

● 시스템의 정의

  • 입력 → 처리 → 출력 흐름을 가지는 구성 요소의 집합
  • 블랙박스 형태로 표현 가능

● 아날로그 vs 디지털

구분아날로그디지털
표현 방식연속적인 값이산적인 값(0, 1)
예시아날로그 시계디지털 시계

● 디지털 시스템의 장점

  • 단순성, 정확성, 편리성, 안정성, 견고성, 융통성
  • 0과 1로만 처리되어 잡음에 강함

2. 디지털 시스템의 설계 및 논리회로

  1. 요구사항 분석
  2. 회로 설계 (circuit design)
  3. 논리 설계 (logic design)
  4. 시스템 설계 (system design)
  5. 실제적 설계 (physical design)
  6. 테스트 및 생산

● 논리회로

  • 조합논리회로: 가산기, 디코더 등
  • 순서논리회로: 플립플롭, 레지스터, 카운터 등

3. 컴퓨터 구성

● 구성 요소

  • 입력장치, 기억장치, 제어장치, 연산장치, 출력장치

4. 집적 회로

● IC (Integrated Circuit)

  • 논리게이트가 실리콘 칩 내부에 집적된 형태

● 집적도에 따른 분류

구분소자 수예시
SSI수 개계산기
MSI수십~수백레지스터
LSI수천~수만초기 마이크로프로세서
VLSI수백만 이상현대 CPU, GPU

● 디지털 논리 계열

계열용도기본 회로
TTL초기 디지털 컴퓨터NAND
ECL고속 통신NOR
CMOS현대 CPU인버터

5. 양논리와 음논리

구분논리 1논리 0
양논리높은 전압낮은 전압
음논리낮은 전압높은 전압

6. 수치 데이터 표현 (진법)

● 기수 r 진법

  • 각 자릿수는 r의 거듭제곱으로 구성됨
  • (1011.101)₂ = 11.625₁₀

● 진수 변환

  • 10진수 ↔ 2진수, 8진수, 16진수 등
  • 예: (28.125)₁₀ = (11100.001)₂

7. 산술 연산

  • 이진수로 가산, 감산, 승산, 제산 수행 가능
  • 보수 계산을 통한 감산 가능

8. 보수

● r의 보수: rⁿ − N

● (r−1)의 보수: rⁿ − r⁻ᵐ − N

● 관계: r의 보수 = (r−1의 보수) + 1


9. 부호 있는 2진수 표현

표현 방식설명
절대치부호 + 값
1의 보수모든 비트를 반전
2의 보수1의 보수 + 1

10. 디지털 코드

● 10진 코드

  • BCD 8421, BCD 2421, Excess-3, Gray 코드 등

● 영숫자 코드

  • ASCII (7비트), EBCDIC (8비트), 유니코드 (UTF-8 등)

요약

  • 디지털 시스템은 정확하고 잡음에 강한 이산 신호 기반 시스템
  • 디지털 논리회로는 조합/순서회로로 구성됨
  • 컴퓨터는 다양한 회로 설계 단계를 거쳐 구성
  • 수치 표현, 진법 변환, 보수 연산 및 디지털 코드 이해가 필수

디지털논리회로 2강

논리게이트와 부울대수 (1)


논리연산의 개요

  • 논리연산(부울연산): 참(True)/거짓(False), 즉 1과 0을 다루는 연산
  • 논리집합: {0, 1}의 집합, 이산값만 존재
  • 부울대수(Boolean Algebra)에 기반한 수학적 논리 체계

논리게이트 개요

  • 논리게이트는 논리회로의 기본 단위
  • 입력값에 따라 출력값을 결정하는 논리적 스위치
  • 모든 입력/출력은 0 또는 1로 처리됨

기본 논리게이트

게이트기호연산출력 조건
AND논리곱모든 입력이 1일 때만 1
OR+논리합하나라도 입력이 1이면 1
NOT¬부정입력이 0이면 1, 1이면 0

복합 논리게이트

게이트설명
NANDAND 후 부정
NOROR 후 부정
XOR입력이 서로 다르면 1
XNOR입력이 서로 같으면 1 (XOR의 부정)

부울대수의 개요

  • 부울변수: 0 또는 1의 값을 가짐
  • 부울함수: 부울변수와 연산자로 구성된 수식
    예: F = X·¬Y + Y·Z

부울함수 → 논리회로도 변환

  • 각 부울 연산은 해당 논리게이트로 변환됨
  • 괄호( ), NOT, AND, OR 등의 우선순위를 반영하여 회로화

부울함수의 진리표

  • 입력 변수의 모든 조합에 대한 출력값을 표로 표현
  • 진리표는 유일한 출력 표현을 제공함

부울함수의 간소화 필요성

  • 게이트 수 감소, 연산 효율 증가, 하드웨어 비용 절감
  • 간단한 부울식으로 동등한 출력을 만들 수 있음

부울대수의 기본 공식

의미
X + 0 = X항등
X + 1 = 1우선 1
X·0 = 0우선 0
X·1 = X항등
X + X = X중복 제거
X + ¬X = 1보완
X·X = X중복 제거
X·¬X = 0보완
(X + Y) + Z = X + (Y + Z)결합 법칙
X + Y·Z = (X + Y)(X + Z)분배 법칙
¬(X + Y) = ¬X · ¬Y드모르간 법칙
¬(X · Y) = ¬X + ¬Y드모르간 법칙

부울대수의 쌍대성 원리

  • 부울식에서 AND ↔ OR, 0 ↔ 1을 바꾸면 성립
  • 예: X + 0 = X ↔ X · 1 = X

부울함수의 간소화 예시

  • F = X·¬Y + X·Y·Z + ¬X·Y·Z
    → 간소화: F = X·¬Y + Y·Z

부울함수의 보수

  • F의 보수 ¬F는 드모르간 법칙 등을 이용하여 계산
  • 보수는 논리 반대 상태를 의미함

요약

  • 논리게이트는 디지털 회로의 핵심
  • 부울함수는 논리게이트로 변환 가능
  • 간소화는 효율성과 비용 절감에 중요
  • 부울대수의 기본 공식과 쌍대성 원리를 통해 다양한 간소화 가능

디지털논리회로 3강

논리게이트와 부울대수 (2)


1. 정규형 (Canonical Form)

  • 논리식을 일관성 있게 표현하는 공식화된 형식
  • 최소항의 합 (Sum of Minterms) 또는 최대항의 곱 (Product of Maxterms)

● 최소항 (Minterm)

  • 입력 조합 하나에서만 출력이 1이 되는 항
  • AND 연산으로 구성됨
  • 예: X'Y'Z, X'YZ, XY'Z' 등

● 최대항 (Maxterm)

  • 입력 조합 하나에서만 출력이 0이 되는 항
  • OR 연산으로 구성됨
  • 예: X+Y+Z', X'+Y+Z 등

● 표기법

  • 최소항: m₀, m₁, ..., m₇
  • 최대항: M₀, M₁, ..., M₇

● 예시

  • F(X,Y,Z) = m₀ + m₁ + m₃ → ∑(0,1,3)
  • F(X,Y,Z) = M₄ · M₅ · M₆ → ∏(4,5,6)

2. 표준형 (Standard Form)

  • 정규형을 간소화한 표현
  • 변수의 모든 조합이 포함되지 않아도 됨

● 곱의 합 (Sum of Products, SOP)

  • 여러 AND 항을 OR로 묶은 구조
  • 예: F = X'Y'Z + X'YZ + XY'Z'

● 합의 곱 (Product of Sums, POS)

  • 여러 OR 항을 AND로 묶은 구조
  • 예: F = (X+Y+Z)(X'+Y+Z)(X'+Y'+Z)

3. 정규형과 표준형 비교

구분정규형표준형
정의모든 변수 포함된 표현일부 변수 생략 가능
특징진리표 기반 완전 표현대수 간소화 결과
목적정확한 분석회로 최적화

4. 진리표 기반 표현 예시

● 출력이 1인 경우의 최소항 조합 (SOP 정규형)

입력:
X: 0 0 0 0 1 1 1 1
Y: 0 0 1 1 0 0 1 1
Z: 0 1 0 1 0 1 0 1
F: 0 1 0 0 1 0 0 1

→ 최소항: m₁, m₄, m₇
→ F = m₁ + m₄ + m₇ = X'Y'Z + XY'Z' + XYZ


● 출력이 0인 경우의 최대항 조합 (POS 정규형)

F = 0인 입력 조합: 000, 010, 011, 101, 110
→ 최대항: M₀, M₂, M₃, M₅, M₆
→ F = M₀ · M₂ · M₃ · M₅ · M₆


5. 부울식 변환 예시

● F = X + YZ̅ 를 최소항의 합으로 변환

  1. 분배법칙 및 항목 보완
  2. 정규형으로 확장: 모든 항에 3개의 변수 포함
  3. 정규형: F = m₂ + m₄ + m₅ + m₆ + m₇ = ∑(2,4,5,6,7)

● F = XY + X'Z 를 최대항의 곱으로 변환

  1. 드모르간 및 보완법칙 활용
  2. 정규형 표현: F = M₀ · M₂ · M₄ · M₅ = ∏(0,2,4,5)

6. 회로도 예시

  • 곱의 합 형태: AND 게이트 여러 개 → OR 게이트
  • 예: F = Y' + X'Y'Z' + XY

7. 활용 목적

  • 정규형: 진리표에서 직접 도출 가능
  • 표준형: 간소화된 회로로 구현 가능
  • 부울함수의 설계 및 최적화에 핵심적으로 사용

디지털논리회로 4강

부울함수의 간소화 및 구현 (1) - 카르노 도표 방법


1. 부울함수 간소화 방법 개요

  • 부울대수를 간단한 형태로 바꾸는 다양한 방법 존재

방법 분류

  • 대수적 방법: 부울대수의 정리를 이용해 수학적으로 간소화
  • 도표 방법: 카르노 도표(Karnaugh Map, K-map) 이용
  • 테이블 방법: 퀸-맥클러스키(Quine-McCluskey) 방법 등

2. 카르노 도표(K-map) 개요

  • 부울함수를 시각적으로 표현하여 간소화하는 도구
  • 2ⁿ개의 셀로 구성된 격자(그레이 코드 순서 사용)
  • 각각의 셀은 하나의 최소항(minterm) 또는 최대항(maxterm) 의미
  • 변수 수에 따라 구조 변화: 2변수(2×2), 3변수(2×4), 4변수(4×4)

3. 최소항의 합 형태 간소화 (SOP)

  1. 변수 개수에 맞게 카르노 도표 작성
  2. 출력이 1인 위치를 도표에서 1로 표시
  3. 인접한 셀끼리 묶음 (2ⁿ 크기 권장: 2, 4, 8, ...)
  4. 각 묶음에서 공통된 변수만 유지, 나머지 제거
  5. 묶음들을 OR 연산으로 연결해 최종식 도출

예시

  • X Y F = 1인 항: m₁, m₄, m₇
  • 묶음 1: X'Y', X'Y → X'
  • 묶음 2: X'Y, XY → Y
  • 결과식: F = X' + Y

4. 최대항의 곱 형태 간소화 (POS)

  1. 변수 개수에 맞게 카르노 도표 작성
  2. 출력이 0인 위치를 도표에서 0으로 표시
  3. 인접한 0들끼리 묶음
  4. 각 묶음에서 공통된 변수만 유지
  5. 묶음들을 AND 연산으로 연결해 최종식 도출

예시

  • F = 0인 최대항: M₀, M₁, M₂
  • 묶음: X + Y, X + Y'
  • 결과식: F = (X + Y)(X + Y') = X

5. 인접 셀 정의 및 묶음 규칙

  • 인접 셀: 하나의 변수만 반대(True/False)이고 나머지는 동일
  • 인접 항끼리 묶으면 하나의 변수를 제거 가능
  • 가장 큰 묶음을 만들수록 변수 수가 줄고 회로가 단순해짐

6. 카르노 도표와 부울대수 연계

  • 카르노 도표에서의 묶음 → 부울대수에서 항 간소화
  • 예: X·Y + X·Y' = X

7. 2변수 카르노 도표 예시

XYF
000
011
101
111

→ F = X + Y


8. 3변수 카르노 도표 예시

  • 변수: X, Y, Z
  • F = ∑m(0, 2, 4, 6, 7)

→ 묶음 1: X'Y'Z, XY'Z, X'YZ, XYZ → Z
→ 묶음 2: XYZ, XYZ' → XY

→ F = XY + Z


9. 핵심 정리

  • 카르노 도표는 부울함수를 시각적으로 간소화하는 도구
  • SOP, POS 형태로 구분되어 간소화 가능
  • 묶음은 가능한 크게, 개수는 적게 만드는 것이 핵심

디지털논리회로 5강

부울함수의 간소화 및 구현 (2)


1. 4변수 카르노 도표 (K-map)

  • 변수 4개 → 2⁴ = 16개의 셀로 구성 (4x4 구조)
  • 각 셀은 하나의 최소항에 대응
  • Gray 코드 순서로 배치되어 인접성 보장

● 묶음 규칙

  • 가능한 큰 크기의 2ⁿ 묶음을 구성 (1, 2, 4, 8개 단위)
  • 모든 인접 항을 최대한 묶어서 간소화

2. 무관 조건 (Don't Care Condition)

  • 특정 입력 조합에서 출력이 정의되지 않거나 의미 없는 경우
  • 해당 입력 조합은 0 또는 1로 간주 가능 → 간소화에 활용
  • 예: BCD 코드에서 1010~1111은 사용되지 않음

● 활용 방법

  • K-map에서 X로 표시
  • 인접 항과 함께 묶어 간소화 가능

3. 기타 카르노 도표 - XOR 표현

  • 2변수 XOR: 하나의 입력만 1인 경우 출력 1
  • 3변수 XOR: 1개 또는 3개 입력이 1인 경우 출력 1
  • 4변수 XOR: 홀수 개의 입력이 1이면 출력 1 (Odd function)

● 일반식

  • A ⊕ B = A'B + AB'
  • 다변수 XOR은 패턴 인식 및 부울식으로 변환 가능

4. NAND 게이트를 이용한 회로 구현

  • NAND 게이트 하나만으로 AND, OR, NOT 연산 가능
  • 모든 논리 게이트를 NAND로만 구현 가능 → 함수적 완결성

● NAND 연산 변환

연산표현식
NOT AA NAND A
A AND B(A NAND B) NAND (A NAND B)
A OR B(A NAND A) NAND (B NAND B)
  • 회로를 NAND 게이트로만 구성하여 구현 가능

5. NOR 게이트를 이용한 회로 구현

  • NOR 게이트 하나만으로도 함수적 완결성 성립
  • AND, OR, NOT 연산 모두 NOR 조합으로 표현 가능

● NOR 연산 변환

연산표현식
NOT AA NOR A
A OR B(A NOR B) NOR (A NOR B)
A AND B(A NOR A) NOR (B NOR B)
  • OR-NOT, NOT-AND 형태로 표현하여 NOR만으로 회로 구현

6. NAND/NOR 다단계 회로 예시

  • 복잡한 부울식도 NAND 또는 NOR 게이트만으로 구현 가능
  • 입력 버블 수와 위치 확인 중요 (버블 상쇄)

요약

  • 4변수 카르노 도표를 통해 복잡한 함수 간소화
  • 무관 조건을 활용하여 더 큰 묶음 구성 가능
  • XOR 표현은 K-map에서 패턴으로 추출 가능
  • NAND, NOR 게이트는 단독으로 논리회로 구현 가능
  • 실용적인 회로 설계 시 NAND/NOR 활용이 일반적
profile
Working Abroad ...

0개의 댓글