디지털 공학의 기초
2진 디지트, 논리 레벨, 디지털 파형
2진 시스템에서 두 개의 디지트는 1과 0이다. 이는 비트라고 불린다. 디지털 회로에서는 두 개의 다른 전압 레벨은 두 개의 비트를 표시한다. 일반적으로, 전압이 높은 쪽이 1 HIGH 전압이 낮은 쪽이 0 LOW로 표시한다.
HIGH=1, LOW=0
논리레벨
전압은 논리 레벨이라고 불리는 1 과 0을 표시하는 데 사용된다. 실제 디지털 회로에서 HIGH는 정해진 최소치와 최대치 사이의 임의 값이면 HIGH이고, LOW도 정해진 최소치와 최대치 사이의 임의 값이면 LOW이다.
예를 들어 0V~2.3V의 값이 LOW 3.5V~5V가 HIGH라고 하자, 전압이 2.2V가 들어오면 LOW(2진 0)이고 전압이 4.5V 들어오면 HGH(2진 1)가 될 것이다. 그리고 2.3V~3.5V는 허용되지 않는다.
데이터 전달
데이터는 어떤 형태의 정보를 전송하는 비트의 집합을 칭한다. 데이터를 디지털 회로적으로 전달하는 방법은 크게 2가지이다.
비트가 한 포트에서 다른 포트로 직렬 형태로 전달될 때,
단일 도체를 따라서 한 번에 한 비트씩 전달된다. 직렬로 8개의 비트를 전송하기 위하여 8개의 시간 간격이 소요된다.
비트가 병렬 형태로 전달될 때,
집합 형태의 모든 비트들은 동시에 분리된 선을 통해 보내진다. 전공될 때 포트가 8개이면 8개의 비트를 전송하는데 8/8초의 시간 간격이 소요된다.
요약하면 2진 데이터 직렬 전송의 장점은 포트가 최소의 선만 요구된다는 것, 병렬은 반대로 전송에서는 전송 선의 개수는 한 번에 전송될 비트 수와 동일한 개수가 요구된다. 하지만 직렬 전송은 시간이 오래 걸리는 반면 병렬은 전송하는 데 시간을 많이 줄일 수 있다.
포트 | 시간 | |
직렬 | 1개로 전송 가능 | 다수의 비트를 보낼 때 매우 오래걸림 |
병렬 | 전송될 비트 수와 동일한 포트 수 요구 | 데이터를 전송하는 데 매우 빠르다. |
논리 동작 기초
논리라는 용어는 논리 함수를 구현하는 데 사용되는 디지털 회로에 적용된다. (NOT, AND, OR)의 기초 논리 연산은 밑에 그림과 같이 특유 형태 심벌로 나타나 있다.
NOT
NOT 동작은 어떤 논리 레벨을 반대의 논리 레벨로 변환시킨다. 예를 들어 입력이 HIGH(1) 일 경우 출력으로 LOW(0)을 출력한다. 어떤 경우에도 출력은 입력과 동일하지 않는다.
AND
AND 연산은 입력이 모두 HIGH일 때만 HIGH를 출력한다. 한 개 이상의 입력이 LOW이면, 출력은 LOW이다.
OR
OR 연산은 한 개 이상의 입력이 HIGH이면 출력이 HIGH이다. 입력 두 개가 모두 LOW이면 LOW가 출력된다.
논리 함수의 기초
비교 함수
비교 함수를 예를 들어 설명하자면, 두 개의 수가 있다고 가정했을 때 이 두 개의 수가 같은지, 다른지 다르다면 어느 수가 더 큰지를 알고자 한다고 하자. 밑에 그림처럼 2진 형태의 수는 입력 A에 입력된다. 다른 2진 형태의 수는 입력 B에 입력된다. 이때, 두 수의 비교 값은 A<B이므로 A<B 출력 포트에서 HIGH레벨이 나오고 나머지 출력단에는 LOW레벨이 나온다.
산술 함수
덧셈, 뺄셈, 곱셈, 나눗셈이 가능한 함수라고 보면 된다.
인코딩 함수와 디코딩 함수
인코더는 10진수 또는 알파벳 문자 같은 정보를 어떤 코드 형태로 변환시킨다.
디코더는 2진수 같은 코드화 된 정보를 10진 형태와 같은 코드화 되지 않은 형태로 변환시킨다.
한마디로, 인코딩은 -> 어떤 정보를 코드화 시키는 것
디코딩은-> 코드화 시킨 것을 사람이 쉽게 볼 수 있는 정보로 바꾸는 것