본문 바로가기
IT

디지털 IC

by Redking

디지털 IC는 신호를 처리하는 방법이 디지털인 IC를 말한다. 디지털 IC는 여러 논리 게이트를 가지고 논리회로 모듈을 구성하는데 AND 게이트, OR 게이트, NOT 게이트, 기타 게이트 등이 있고 이런 게이트들이 묶여 하나의 칩으로 설계된 결과물이 IC라고 볼 수 있다. IC 칩은 제조 기술에 따라 하나의 칩 내부에 집적시킬 수 있는 트랜지스터의 수가 달라지며 반도체 기술의 발달로 그 수가 계속 늘어나고 있다. 한 칩에 넣을 수 있는 트랜지스터가 늘어 난다는 것은 칩 내부에 들어가는 게이트의 수가 그만큼 늘어나는 것이므로 조금 더 복잡한 논리식을 전달 할 수 있겠지만 보다 정밀한 작업이 필요하게 되기 때문에 기술적인 어려움이 발생한다. 

 

디지털 IC는 하나의 칩에 집적되는 트랜지스터의 수에 따라 아래와 같이 분류된다.

SSI(Small Scale IC): 수십 개의 트랜지스터가 넣어진 IC 칩으로 기본적인 논리게이트와 플립플롭들이 여기에 해당한다.

. MSI(Medium Scale IC): 수백 개의 트랜지스터가 집적된 IC 칩을 말하며 카운터, 디코더, 레지스터, 멀티플렉서, 산술 회로, 소형 기억 장치 등이 포함된다.

. LSI(Large Scale IC): 수천 개의 트랜지스터가 집적된 대규모 IC 칩을 말하며 8비트 마이크로프로세서와 소규모 기억장치들이 여기에 속한다.

. VLSI(Very Large Scale IC): 수만~수십만 개의 트랜지스터가 집적된 초대규모 IC로서 대형 마이크로프로세서와 대규모 메모리들 이 이 분류에 속한다.

. ULSI(Ultra Large Scale IC): 수백만 개 이상의 트랜지스터들이 집적되는 32비트급 이상의 마이크로프로세서 칩들과 수백 메가비트 이상의 반도체 기억장치 칩들을 나타내기 위한 용어이다.

 

디지털 IC는 아날로그 IC와 다르게 몇 가지 장점이 있다.

  1. 재생산성: 같은 입력값을 넣는 경우 항상 정확하고 동일한 결과를 출력하지만 아날로그 IC는 열, 전원 전압, 부품 노후화 등 여러 외부 요인에 따라 출력이 변한다.
  2. 쉬운 설계 방법: 디지털 설계는 논리적인 설계이고 커패시터, 트랜지스터, 모델링하는 과정에서 수학적 지식 없이도 기초만 잘 인지하고 있다면 쉽게 설계가 가능하다.

 

이제 디지털 집적회로의 조합논리회로와 설계하는 방법인 플립플롭에 대해 알아보겠다.

 

조합논리회로

과거에 입력값을 기억하지 않고 현재의 입력값에 의해 출력값이 정해지는 회로로 n개의 입력 변수에 의해 2n 개의 입력 2진 조합이 가능한 회로이다. 조합논리회로를 설계하는 방법은 설계하려고 하는 회로의 사양 분석과 분석된 동작을 위해 할 수를 구하는 과정이고 설계할 때 중요한 고려 사항으로는 게이트 입력의 최소화, 게이트의 수 최소화, 논리회로의 전파지연시간 최소화, 상호 연결되는 수를 최소화해야 한다는 고려가 들어가야 한다. 이를 모두 고려 했다면 설계를 시작할 수 있고 설계하는 순서는 다음과 같다.

 

  1. 문제 파악
  2. 입력 변수, 출력 변수 그리고 출력의 변수명 결정
  3. 진리표 작성 후 진리표로부터 부울 함수를 구함
  4. 진리표에 의해 카르노 맵 또는 그 외 방법으로 간소화
  5. 간소화된 부울 함수에 의해 논리 회로를 설계

 

조합논리회로 내부에는 다양한 기능이 내장되어 있는데 이는 다음과 같다. 가/감산기, 비교기, 디코더, 인코더, 멀티플렉서, 디멀티플렉서, 코드 변환기, 패리티 발생기/검출기 등이 있다. 

 

 

가산기

  1. 반가산기(half adder) : 2개의 2진수 A와 B를 더하여 합(sum)과 캐리(carry)를 산출하기 위한 조합 논리회로i
  2. 전가산기(full adder): 여러 비트로 된 두 수를 더할 때 두 비트에서 더해진 결과인 캐리는 더 높은 자리의 두 비트의 덧셈에 추가하여 더해짐아래 자릿수에서 발생한 캐리까지 포함하여 세 비트를 더하는 논리회로를 전가산기라 함입력 비트 중 두 비트를 더하여지는 유효 비트와 아래 자릿수부로부터의 캐리 비트를 더함
  3. 2진 병렬 가산기 : 2개의 n비트 2진수를 더하는 가산기
  4. 고속가산기: 아랫단에서 윗단으로 전달되는 자리올림수 때문에 병렬가산기는 속도가 매우 느리다 는 단점이 있음. 이것을 해결하기 위한 방법으로 LAC (Look Ahead Carry) 회로를 가진 캐리예측가산기 (carry-look-ahead-adder, CLA)를 사용

감산기

  1. 반감산기(Half subtracter) : 2진수 1자리의 두 개 비트를 빼서 그 차를 산출하는 회로
  2. 전감산기(Full subtracter): 입력 변수 3자리 뺄셈에서 차(D)와 빌려오는 수(B)를 구하는 것

인코더: 최대 M (<= 2N )개의 입력과 N개의 출력으로 구성되며, M개의 입력 중 한 개의 입력이동작하여 그에 대응하는 n 비트의 출력코드를 생성하는 조합회로

디코더: n개 입력선의 코드화된 2진 정보를 최대 2 n개의 출력으로 변환하는 조합회로

멀티플렉서: n개의 선택선의 조합에 의해 선택된 2^n 개의 입력선 중에서 하나를 선택하여 출력선에 연결시켜 주는 회로이다.  즉, n개의 입력 신호로부터 특정 조건에 의해 입력 신호를 한 개만 선택할 때 사용하는 것

디멀티플렉서: 1개의 입력선으로 받아들여 n개의 선택선의 조합에 의해 2^n개의 출력선 중에서 하나를 선택하여 출력하는 회로데이터 분배기(Data distributor)라고도 불린다. 즉, 1개의 입력을 갖고 4개의 출력물이있는데 S1과 S0에 의해서 그 중 하나만 선택해 출력하는 회로이다.

코드 변환기: 그레이 코드를 이진 코드 변환 하는 과정으로 그레이 코드의 첫번째 비트는 이진코드의 첫 번째 비트가 되고 결과의 이진코드 비트와 이웃하는 오른쪽의 그레이 코드 비트를 XOR 하면 각각 그레이 코드가 된다.

패리티 검출기: 패리티 생성기 및 패리티 검사기의 주요 기능은 데이터 전송 오류를 감지 하며 패리티 비트는 전송 측에서 '0'또는 '1'로 설정되는 추가 비트로 단일 비트 오류 만 감지하는 데 사용되며 오류를 감지하는 가장 쉬운 방법입니다. 오류를 감지하는 데 사용되는 오류 감지 코드에는 패리티, 링 카운터, 블록 패리티 코드, 해밍 코드, 2 진법 등 다양한 유형이 있습니다.

 

'IT' 카테고리의 다른 글

[HTML] a 태그를 이용한 다운로드 기능  (0) 2023.01.05
배달앱  (0) 2022.08.13
운영체제의 종류  (0) 2022.08.13
Instruction Pipeline  (0) 2022.08.13
컴파일러  (0) 2022.08.13

댓글