논리설계 - 조홥회로, 순차회로 설계

업데이트:

  • 연구주제 : 조합회로와 순차회로의 설계방법 학습
  • 연구목적 : 논리설계 복습
  • 연구일시 : 2020년 04월 13일 09:00~17:00
  • 연구자 : 이재환 ljh951103@naver.com
  • 연구장비 : HP EliteDesk 800 G4 TWR, Kotlin, Android studio, IntelliJ
  • 관련연구 : Java, Android, Kotlin, Google, API


서론

올해 컴퓨내 내부 회로를 다루는 전공과목 수강을 위하여 작년에 배웠던 논리설계에 대한 내용을 복습하는 시간을 갖도록 하였습니다.


본론

조합회로 설계방법

1. 디코더의 특성

디코더는 n비트의 2진 코드를 입력으로 받아들여 최대 2^n개의 서로 다른 정보로 바꿔 주는 조합회로를 뜻합니다. 즉, n개의 입력과 최대 2^n개의 출력을 가집니다. 예를 들어 입력이 3개에서 출력 8개가 나오면 3-to-8 디코더, 입력이 4개에서 출력 16개가 나오면 4-to-16 디코더라고 합니다.

이러한 디코더는 최대 2^n개의 최소항을 만들 수 있고 컴퓨터가 인식할 수 있는 것들을 해독해서 사람이 읽을 수 있게 바꾸는 해독기 역할을 합니다. 따라서 많은 출력이 필요하고 각 출력 구성이 적은 수의 최소항으로 구성된 경우, 디코더를 이용한 회로 설계가 유용하다고 볼 수 있습니다.

인코더와 비교하여 디코더의 특징은 다른 부호체제를 기존 부호체제로 변환해주는 것이라고 할 수 있습니다. (2진코드 -> 10진코드 변환)


2. 인코더의 특성

인코더란 디코더와 반대로 2^n개의 입력을 받아들여 n개의 출력을 가집니다. 이 때, 출력은 입력값에 대응하는 2진 코드가 됩니다.

인코더는 부호화되지 않은 입력을 받아서 부호화된 출력으로 내보내는 디코더와 상반된 역할을 하는 변환기 회로라고 할 수 있습니다. 또한 모호함을 없애기 위해 입력에 대한 우선순위를 두는 우선순위 인코더도 많이 활용되고 있습니다.

디코더와 비교하여 인코더의 특징은 기존 부호체제를 다른 부호체제로 변환해주는 것이라고 할 수 있습니다. (10진코드 -> 2진코드 변환)


3. 멀티플렉서의 특성

일반적으로 MUX라고 부르는 멀티플렉서는 많은 입력 중 하나의 2진 정보를 선택하고 단일 출력으로 선택된 정보를 출력하는 조합회로입니다. 즉, n개의 선택선의 조합에 의해 2^n개의 입력선 중에서 하나를 선택하여 출력선에 연결시켜주는 회로입니다.

이러한 멀티플렉서는 여러 개의 회로가 단일 회선을 공동으로 이용하여 신호를 전송하는 데 사용됩니다. 이는 인코더와 상당히 유사한 관계라는 사실을 알 수 있습니다.


4. 디멀티플렉서의 특성

디멀티플렉서는 멀티플렉서와 반대 기능으로 하나의 입력 데이터를 여러 개의 출력선 중에서 하나를 선택하여 출력하는 회로입니다. 이는 데이터 분배기라고도 불립니다.

하나를 선택한다는 말이 멀티플렉서와 비슷하지만, 멀티플렉서는 여러 개의 입력선 중 하나를 선택하여 출력하는 것이고 디멀티플렉서는 1개의 입력으로 여러 개의 출력선 중 하나를 선택하여 출력하는 방식이기 떄문에 정반대의 기능을 수행한다고 할 수 있습니다.

디멀티플렉서는 디코더와 상당히 유사한 관계라는 것을 알 수 있습니다.


순차회로 설계방법

1. 상태표 추출

우선 문제의 설명으로부터 상태 다이어그램이나 상태표를 얻어야 합니다. 상태표는 현재상태, 다음 태, 출력값이 포함된 표입니다.


2. 상태지정

상태표에서 상태에 2진 코드를 할당합니다.


3. 플립플롭 입력식 결정

플립플롭 형을 선택합니다. 즉, 인코드 된 상태표에서 다음 상태 항목들로부터 플립플롭 입력식을 유도합니다.


4. 출력식 결정

상태표의 출력항목들로부터 출력식을 유도합니다..


5. 최적화

플립플롭 입력식과 출력식을 최적화하여 간략하게 만듭니다. 주로 맵을 이용한 최적화를 합니다. 이 때, 사용되지 않는 상태는 표시되지 않기 때문에 무정의 조건으로 처리할 수 있습니다.

6. 기술 매핑

이제 플립플롭과 AND, OR, 인버터를 사용하여 논리 다이어그램을 그립니다. 사용 가능한 플립플롭과 게이트 기술을 사용하여 새로운 논리 다이어그램을 그립니다.


결론

작년에 학습했던 논리설계에 대한 핵심 내용만 간략하게 복습하였습니다.

향후과제


참고자료


Writer: Jae-Hwan Lee

댓글남기기