본문 바로가기
Computer/Computer Architecture

컴퓨터 구조의 개요 및 디지털논리회로(I)

by curious week 2025. 10. 13.

개요·디지털 논리 기초

학습목표

  • 컴퓨터 시스템의 개념과 구성요소를 이해한다.
  • 디지털 논리회로의 개념과 기본 논리게이트를 이해한다.
  • 불대수(Boolean algebra)와 불함수를 이해한다.
  • 불함수 간소화의 필요성과 대표적 방법(대수법, 카르노도표)을 이해한다.

주요 용어 정리

  • 컴퓨터 시스템(Computer System): 데이터 처리 목적을 달성하기 위해 상호작용하는 하드웨어+소프트웨어 전체의 집합.
  • EDPS (Electronic Data Processing System): 전자식 데이터 처리 시스템.
  • 논리 게이트(Logic Gate): 디지털 논리회로를 구성하는 최소 단위 소자(AND/OR/NOT 등).
  • 불대수(Boolean algebra): 0/1 값을 갖는 논리변수와 논리연산을 다루는 대수 체계.
  • 불함수(Boolean function): 논리변수·연산기호·괄호·등호로 표현된 논리식.
  • 진리표(Truth Table): 모든 입력 조합에 대한 출력 값을 나열한 표(개념적으로 이해).

1. 컴퓨터 시스템의 개요

1.1 기본 개념

  • 컴퓨터: 전자식 데이터 처리 시스템(EDPS)을 구현하는 기계.
  • 컴퓨터 시스템: 목적 달성을 위해 입력·처리·저장·출력이 유기적으로 동작하는 전체 구조.

1.2 구성 요소(큰 틀)

  • 하드웨어(HW)
    • 입력장치: 키보드, 마우스, 센서 등
    • 출력장치: 모니터, 프린터 등
    • 기억장치: 주기억장치(RAM), 보조기억장치(SSD/HDD)
    • 중앙처리장치(CPU): 산술논리연산장치(ALU) + 제어장치(CU)
    • 시스템 버스: 데이터/주소/제어 신호 전달
  • 소프트웨어(SW)
    • 시스템 소프트웨어: 운영체제(OS), 컴파일러, 드라이버 등
    • 응용 소프트웨어: 워드 프로세서, 브라우저, 게임 등

1.3 세대별 발전(개념적 흐름)

  • 1세대: 진공관, 어셈블리어, 일괄처리(batch)
  • 2세대: 트랜지스터, 고급언어, 실시간·시분할 처리
  • 3세대: 집적회로(IC), 다중프로그래밍
  • 4세대: LSI(대규모 집적), 개인용 컴퓨터 확산
  • 차세대: VLSI(초대규모 집적), 병렬처리, 자연어처리, 인공지능 등

1.4 분류 기준

  • 성능·규모: 슈퍼컴퓨터 > (서버: 메인프레임컴퓨터 > 미니컴퓨터 >) 마이크로컴퓨터(PC/스마트폰) > 임베디드/IoT디바이스
  • 구조(아키텍처):
    • 파이프라인 슈퍼컴퓨터: 명령어 단계 병렬(명령어 수준 병렬성/ILP)
    • 대규모 병렬처리: 다수의 처리장치로 태스크/데이터 병렬성 활용

2. 컴퓨터와 디지털 논리회로(1)

2.1 디지털 논리회로 개요

  • 정의: 컴퓨터와 같은 디지털 장치를 구성하는 기본 회로.
  • 기반: 2진 논리를 게이트로 구현, 집적회로(IC) 형태로 제공.
  • 분류
    • 조합논리회로: 출력이 현재의 입력에만 의존(예: 가산기, 디코더)
    • 순서논리회로: 출력이 현재 입력 + 내부 상태(저장요소)에 의존(예: 레지스터, 카운터)

2.2 논리 게이트와 불대수

2.2.1 기본 논리 게이트

  • AND(∙), OR(+), NOT(’ 또는 ¬)
  • 확장 게이트: NAND, NOR, XOR, XNOR

간단 동작 요약:

  • AND(논리곱): 두 입력이 모두 1일 때만 1
  • OR(논리합): 두 입력 중 하나라도 1이면 1
  • NOT(논리부정): 입력을 반전하여 0↔1
  • XOR(배타적 논리합): 두 입력이 서로 다르면 1
  • XNOR(동치, XOR의 부정): 두 입력이 같으면 1
  • NAND(논리곱의 부정): AND 결과를 뒤집어, 둘 다 1일 때만 0
  • NOR(논리합의 부정): OR 결과를 뒤집어, 둘 다 0일 때만 1

2.2.2 불대수와 불함수

  • 불대수(Boolean algebra): 0/1과 논리연산(AND/OR/NOT)을 다루는 대수 체계.
  • 불함수(Boolean function): 논리변수로 구성된 논리식.
    예) F = X'Y + XY'Z + X'Y'Z'
    • X'는 NOT X, XY는 X AND Y, +는 OR.
입력
 X ──────────┬───────────────┬──────────────┐
             │           [NOT]              │
             │            (X')─────────┐    │
 Y ──────────┬─────────┬──────────┐    │    │
             │     [NOT](Y')      │    │    │
             │         │          │    │    │
 Z ──────────┬──────[NOT](Z')     │    │    │
             │   ┌─────┴───┐  ┌───┴──┐ │ ┌──┴───┐
             │   │ AND2   │  │ AND3  │ │ │ AND3  │
             │   │ T1     │  │ T2    │ │ │ T3    │
             │   │ X' · Y │  │ X·Y'·Z│ │ │ X'·Y'·Z'│
             │   └───┬────┘  └──┬────┘ │ └──┬─────┘
             └───────┴──────────┴───────┴────┘
                           │
                       ┌───▼───┐
                       │  OR3  │  →  F
                       └───────┘
  • 논리 회로도 대응: 불함수 ↔ 게이트 조합 회로(AND/OR/NOT로 연결).
  • 진리표: 모든 입력 조합(예: X,Y,Z 각각 0/1)에 대해 F의 값을 나열.
    • 동일한 진리표를 만족하는 불함수는 여러 형태가 있을 수 있음 → 간소화의 필요성.

3. 불함수의 정규형과 최소항/최대항

3.1 최소항(mint erm)과 최대항(maxterm)

  • 최소항: 모든 변수를 한 번씩 포함하여 AND로 묶은 항.
    • 하나의 입력 조합에서만 1이 됨.
    • 예) 변수 X,Y: X'Y', X'Y, XY', XY (4개)
  • 최대항: 모든 변수를 한 번씩 포함하여 OR로 묶은 항.
    • 하나의 입력 조합에서만 0이 됨.
    • 예) 변수 X,Y: X+Y, X+Y', X'+Y, X'+Y' (4개)

3.2 정규형(Canonical form)

  • 합의 형태(Sum of Minterms, SOP, 표기): 최소항(minterm: “한 조합에서만 1”인 AND 항)들의 OR 합으로 표현
    • 예) F(X,Y,Z) = m1 + m3 + m5 처럼 최소항 인덱스로도 표기
  • 곱의 형태(Product of Maxterms, POS, ΠM()): 최대항(maxterm: “한 조합에서만 0”인 OR 항)들의 AND 곱으로 표현
    • Σm(S)ΠM(S)

※ 동일 기능을 여러 방식(SOP/POS)으로 표현 가능하며, 간소화를 통해 더 적은 게이트로 구현하는 것이 목표.


4. 불함수 간소화

4.1 왜 간소화하나?

  • 게이트 수, 입력 수, 배선이 줄어들어 비용·전력·지연 감소 → 효율적 회로.

4.2 대표적 방법

곱의 합 전개 후 흡수
시작식: f = (y + x)(y + z)

전개(분배법칙):
= y(y + z) + x(y + z)
= yy + yz + xy + xz

멱등법칙(yy = y):
= y + yz + xy + xz

흡수법칙(y + yz = y, y + xy = y):
= y + xz
  1. 대수적 간소화(Algebraic)
    • 불대수의 기본 법칙(교환·결합·분배·드모르간·흡수 등)을 이용해 수식 변형
  2. 카르노 도표(Karnaugh Map, K-map)
    • 시각적 묶음(Groups)을 통해 항을 줄임
    • 2ⁿ개의 칸(사각형)이 있고, 인접 1들을 1,2,4,8… 크기로 묶어 항을 제거
    • https://karnaughmapsolver.com/ko

4.3 자주 쓰는 불대수 법칙(핵심만)

  • 항등: X + 0 = X, X∙1 = X
  • 지배: X + 1 = 1, X∙0 = 0
  • 멱등: X + X = X, X∙X = X
  • 보수: X + X' = 1, X∙X' = 0
  • 교환: X + Y = Y + X, X∙Y = Y∙X
  • 결합: (X + Y) + Z = X + (Y + Z), (X∙Y)∙Z = X∙(Y∙Z)
  • 분배: X∙(Y + Z) = X∙Y + X∙Z, X + Y∙Z = (X + Y)∙(X + Z)
  • 드모르간: (X∙Y)' = X' + Y', (X + Y)' = X'∙Y'
  • 흡수: X + X∙Y = X, X∙(X + Y) = X

4.4 간소화 예시(대수적)

예) 다음을 간소화
F = X'Y'Z + X'YZ + XY'Z + XYZ

  • Z를 묶어보면: F = Z(X'Y' + X'Y + XY' + XY)
  • 괄호 안은 모든 조합(=1): X'Y' + X'Y + XY' + XY = 1
  • 따라서 F = Z

4.5 간소화 예시(개념적 K-map 절차)

  • 진리표로 1이 되는 칸을 K-map에 표시 → 1들을 인접하게 1,2,4,8… 크기로 묶기
  • 묶음마다 변하지 않는 변수만 남기고 항을 도출
  • 모든 묶음 항을 OR로 합치면 간소형 완성

5. 핵심 요약

  • 컴퓨터 시스템은 입력–처리–저장–출력이 상호작용하는 HW+SW의 전체.
  • 디지털 논리회로는 게이트로 2진 논리를 구현하며, 조합/순서 회로로 나뉜다.
  • 불대수는 불함수를 다루는 이론적 기반이며, 진리표는 기능 동등성을 판정하는 기준.
  • 최소항/최대항정규형(SOP/POS)을 이해하면, 어떤 기능도 체계적으로 표현 가능.
  • 간소화(대수법/K-map)는 회로를 효율적으로 만드는 필수 단계.

약어·용어 간단 풀이

  • EDPS: Electronic Data Processing System(전자식 데이터 처리 시스템)
  • IC: Integrated Circuit(집적회로)
  • LSI: Large Scale Integration(대규모 집적)
  • VLSI: Very Large Scale Integration(초대규모 집적)
  • CPU: Central Processing Unit(중앙처리장치)
  • ALU: Arithmetic Logic Unit(산술논리연산장치)
  • K-map: Karnaugh map(카르노 도표)

'Computer > Computer Architecture' 카테고리의 다른 글

처리장치(II)  (0) 2025.10.13
처리장치(I)  (0) 2025.10.13
컴퓨터 명령어(II)  (0) 2025.10.13
디지털논리회로(II) 및 컴퓨터 명령어(I)  (0) 2025.10.13