ch2_전자 회로의 조합 논리_컴퓨터는 어떤 논리로 비트를 다루는가

  • 디지털 컴퓨터의 사례
    • 아날로그와 디지털의 차이 : 아날로그는 연속적, 디지털은 이산적(손가락으로 수를 세는 것처럼 하나하나 다른 존재로 구분됨)
    • 하드웨어에서 크기가 중요한 이유 : 전기는 광속으로 움직이지만, 광속에도 물리적인 한계가 있다. 부품을 가능한 가깝게 배치하여 작게 만들면 더 높은 성능을 달 성할 수 있다.
    • 디지털을 사용하면 더 안정적인 장치를 만들 수 있다 : 하드웨어가 너무 작아지면 서로 간섭하기 쉬워진다. 누화 효과crosstalk(간섭)를 방지하기 위해선 더 높은 판정기준을 통해 잡음내성noise immunity를 갖는 디지털 회로를 사용해야 한다.
    • 아날로그 세계에서 디지털 만들기 : 전이함수를 활용하여 트릭을 통해 디지털을 구현해왔다. 입력이 조금만 변해도 출력이 확 달라지는 기준점(판정기준)을 문턱값이라 한다. 아날로그는 가능한 선형영역(직선부)을 크게 만들기 위해 노력하고, 디지털은 직선부(문턱값의 범위)를 가능하면 작게 만들고자 한다.
    • 10진 숫자 대신 비트를 사용하는 이유 : 전이 함수를 각기 다른 10가지 문턱값으로 구분할 수 있는 간단한 방법이 없기 때문 비트를 사용하면 전이 함수가 아주 가파르기 때문에 문턱값 구현이 용이하고 재량권이 커진다.


  • 간단한 전기 이론 가이드
    • 전기는 수도 배관과 유사하다 : 전기를 물과 유사하다. 물이 파이프를 흘러가는 것처럼 전기도 선을 통해 이동한다. 도체는 파이프 내부, 부도체는 파이프 자체다. 전기의 흐름을 제어할 수 있는 밸브는 스위치다. 물이 압력에 의해 밀려서 움직이는 것처럼 전기는 전압(V)에 따라 움직인다. 측정단위는 볼트다. 전기 흐름의 양은 전류(I)이며, 측정 단위는 암페어다. 관이 더 가늘수록 관을 통해 흐를 수 있는 물의 양이 제한된다. 전기도 저항(R)이 있으며 측정단위는 옴이다. 옴의 법칙은 I = V / R이다.

    • 전기 스위치 : 도체 사이에 부도체를 삽입하거나 제거하여 스위치를 만든다. 전기시스템은 회로라고 부르며 스키매틱(계통도, 회로도)을 통해 문서화한다. 전기시스템은 에너지 근원에서 전기가 나와, 회로 구성요소를 지나 다시 근원으로 돌아간다.


  • 비트를 처리하기 위한 하드웨어
    • 릴레이 : 선을 둥글게 감아 코일로 만들고 전기를 흘려보내 코일을 전자석으로 만든다. 전자석은 켜고 끌 수 있어 물건을 움직이게 할 수 있다. 릴레이는 스위치를 움직이기 위해 전자석을 사용하는 장치이다. 릴레이를 사용하면 NOT함수를 구현하는 인버터를 만들 수 있다. 단점으론 느리고 전기를 많이 소모하며, 스위치 접점에 문제가 생길 경우 안정성이 떨어진다.

    • 진공관 : 물체를 충분히 가열하면 전자가 튀어나오는 열전자 방출 현상을 활용한다. 야구투수 역할의 캐소드(전자 방출)과 캐소드를 가열하는 히터가 있따. 포수 역할을 하는 애노드(전자 수용)와 타자 역할을 하는 그리드(스위치)가 있다. 세 요소(캐소드, 그리드, 애노드)가 있는 진공관을 삼극관이라고 한다. 장점은 움직이는 부분이 없어 릴레이 보다 훨씬 더 빠르다. 단점은 전구와 같이 아주 뜨겁고 깨지기 쉽다.

    • 트랜지스터 : 반도체를 활용한다. 반도체 물질로 이뤄진 기판, 슬랩 위에 만들어진다. 쌍극 접합 트랜지스터BJT와 전계 효과 트랜지스터FET가 대표적이다. 트랜지스터는 스위치 역할을 하며, 손잡이 역할을 하는 게이트나 베이스가 올라가면 전기가 위에서 아래로 흐른다.

    • 집적회로 : 트랜지스터를 사용하면서 더 작고, 빠르고, 신뢰할 수 있으며, 전력도 적게 소모하는 논리회로이다. 생긴 모양 때문에 칩이라고 불린다.


  • 논리게이트 : NAND게이트가 AND, OR, NOT연산으로 표현가능한 모든 논리를 표현할 수 있으며, 더 효율적이다.
    • 이력 현상을 활용한 잡음 내성 향상 : 잡음으로 발생하는 출력 신호 글리치(작은 오류)를 이력현상을 통해 방지할 수 있다. 이력현상은 과거에 벌어진 일에 따라 판정기준을 다르게 하는 것이다. 올라가는 신호와 내려가는 신호에 따라 전이 함수를 다르게 한다. 이는 입력신호의 문턱값을 높여 잡음 내성을 키우는 것이다. 이력을 사용하는 게이트인 슈미트 트리거는 복잡하고 비싸기 때문에 특수한 경우에만 사용한다.

    • 차동신호 : 잡음이 많아서 이력을 도입해도 충분하지 못한 경우, 측정값이 반전관계(차동)인 2개의 입력 신호(차동신호)를 받아 해결하고자 했다. 두 입력신호의 상대값에 따라 출력을 결정한다. 입력신호를 반전관계로 변환하는 드라이버와 두 입력신호를 단일 신호로 만들어주는 리시버가 있다. 한계로는 두 신호의 공통 잡음인 공통모드는 해결할 수 없었다.

    • 전파지연 : 입력의 변화가 출력에 영향을 미칠 때까지 걸리는 시간이다. 정확한 실측값은 아니고 통계적인 측정값이다. 최대지연과 치소지연 사이에 실제지연값이 있다.

    • 출력 유형
      • 토템폴 출력 : 일반적인 게이트출력. 토템폴처럼 세로로 나란히 늘어서서 토템폴출력이라 한다. 위에 있는 스위치는 출력 1을 얻기 위한 출력과 높은 논리값 1을 연결하기에 액티브풀업이라고도 불린다. 서로 연결할 경우 부품이 타버린다.
      • 오픈 컬렉터 출력 : 오픈컬렉터나 오픈드레인 출력이 있다. 원하는 출력이 1이면 출력은 그냥 떠 있다. 출력을 서로 연결할 수 있으며, 필요하면 출력을 패시브 풀업에 연결 할 수 있다. 토템폴 장치보다 더 높은 전류를 감당할 수 있다.
      • 트라이스테이트 출력 : 상태가 3가지(0, 1, 활성화)이다. 수많은 장치를 서로 선으로 직접 연결할 수 있다. 단점은 한 번에 단 하나의 장치만 활성화해야 한다.


  • 게이트를 조합한 복잡한 회로 : 하드웨어 설계과정을 단순화 한다. 회로 설계를 유형화한 패키지이다.
    • 가산기 : 2개의 게이트로는 2비트를 더할 수 있는 반가산기를 만들 수 있다. 3개의 게이트를 사용하면 올림을 효율적으로 처리하는 전가산기를 만들 수 있다. 아래쪽 비트부터 위쪽 비트로 물결처럼 가산하는 리플 자리올림 가산기도 있다. 리플 자리올림 가산기의 출력시간 지연은 비트가 많아질 수록 커진다. 올림 예측 가산기는 이런 지연을 제거할 수 있다. 다만 계산 속도와 전력 소모 사이의 트레이드 오프 관계가 존재한다.

    • 디코더 : 인코딩된 수를 개별 비트의 집합으로 만들어준다. 입력값의 변환

    • 디멀티플렉서 : 디코더를 사용해 복합체인 디멀티플렉서(디먹스)를 만들 수 있다. 입력을 여러 출력 중 한 곳으로 전달 한다.

    • 실렉터(멀티플렉서, 먹스) : 여러 입력 중 한 입력을 선택한다.

  • 정리

- 2장에서는 숫자 대신 비트를 사용해 하드웨어를 만드는 이유를 배움
- 비트와 조합 디지털 논리를 구현할 수 있게 해준 기술의 발전에 대해 살펴봄
- 현대의 논리 설계 기호와 논리 부품을 조합해 더 복잡한 장치를 만들 수 있음

+ Recent posts