New World

[방통대] 정리집 | 디지털논리회로 본문

Self-Study/Study

[방통대] 정리집 | 디지털논리회로

hyeovi 2022. 5. 27. 00:42
728x90
반응형

 

   
1강 디지털 시스템
장점 : 편리성, 융통성, 단순성, 안정성, 견고성, 정확성
 
설계
1. 회로 설계 : 능동 소자와 수동소자를 연결
2. 논리 설계 : 논리회로를 만들기 위해 논리소자들을 연결
3. 시스템 설계 : 논리회로들을 연결하여 프로세서, 입출력 제어장치 등을 설계
4. 실제적 설계 : 시스템 설계 단계와 부품들을 PCB나 와이어 랩 기판에 배치
 
디지털 논리회로
- 논리설계 단계, 2진 디지털 논리를 논리 게이트로 구현
저장요소의 유무에 따라 : 조합논리회로(유), 순서논리회로(무)

2. 컴퓨터 구성

전자식 데이터 처리 시스템 : 컴퓨터를 시스템 측면에서 분석 (구성요소, 기능, 입출력은 무엇인지)
 
컴퓨터 하드웨어 구성
 

3. 집적회로

디지털회로는 집적회로(IC)로 구성
 
IC : 칩, 디지털 게이트의 기능을 수행하는전자소자를 포함한 작은 실리콘 반도체 크리스털
칩 내부에 있는 여러 가지 게이트들은 회로의 목적에 부합되도록 상호 연결
 
집적도 : 단위 실리콘 칩에 집적할 수 있는 게이트 수
소규모 : 몇 개의 독립된 게이트 내장
중규모 : 10~100여개, 디코더/레지스터
대규모 : 수백~수천, 프로세서/기억장치 칩
초대규모 : 수천 개 이상, 마이크로컴퓨터 칩

양논리와 음논리
- 게이트의 입력과 출력에 대한 2진 신호는 두 값 중 한 값
- 두 논리값(0, 1)에 대한 두 신호값(H, L)을 할당하는 방법
- 양 : H(1), L(0) / 음 : H(0), L(1)

2. 데이터 표현

1. 수치 데이터

진법
- 수를 숫자로 나타내는 방법
- 숫자의 위치에 따라 가중치(기수(2 이상의 양의 정수)의 거듭제곱) 부여
 

2. 디지털 코드

10진 코드 : 10진수를 나타내는 2진 코드
 
영숫자 코드
- ASCII 코드 : 하나의 영숫자 코드가 7비트로 구성, 1비트의 패리티 비트를 포함하여 전송
-EBCDIC 코드 : 하나의 영숫자 코드가 8비트로 구성, 1비트의 패리티 비트를 포함하여 전송 (비효율적)
-유니코드 : 전 세계 문자체계 표현, 인코딩 방식(UTF-8, UTF-16, UTF-32)
2강 & 3강

1. 논리연산

1. 논리연산과 논리게이트

논리연산 : 2진 디지털 시스템에서 입출력 관계를 표현
- 그래프다 진리표로 표시
- 논리함수로 표시 (입력에 따라 변수가 어떻게 변하는가 나타내는 함수, 2진 논리값/논리함수)
 
논리집합 (부울집합) : 집합이 0과 1로만 구성된 집합
- AND 연산 : 점으로 표시, 생략 가능
- OR 연산 : 덧셈 기호로 표시
- NOT 연산 : 변수 위에 줄을 그어 표시
 

2. 부울대수

부울대수 : 0과 1의 값을 갖는 논리변수와 논리연산을 다루는 대수
부울함수
- 논리변수의 상호관계를 나타내기 위해 부울변수, 부울연산기호, 괄호 및 등호 등으로 나타내는 대수적 표현
- 논리회로도 : 논리 게이트들로 구성되는 논리회로도 작성 가능 (단순해야함)
- 진리표 : 논리변수에 할당한 0과 1의 조합의 리스트
쌍대성 원리
- 부울대수에서 어떤 부울공식이 항상 성립하고 자신의 쌍대형태를 구할 있다면 쌍대형태의 부울식도 성립
 
쌍대형태 : 논리연산, 논리상수
 
부울함수의 간소화 방법 : 대수적인 방법, 도표를 이용한 방법, 테이블을 이용한 방법
 

3. 부울함수의 정규형 및 표준형

정규형
- 부울함수를 최소항의 합 or 최대항의 곱
- 최소항(mj) : 논리곱(AND)으로 표현 (결과 : 논리-1)
- 최대항(Mj) : 논리합(OR)으로 표현(결과 : 논리-0)
 
표준형
- 부울함수를 표현하는 간소화된 형태 (각 항은 하나 또는 그 이상의 문자로 구성)
- 곱의 합 & 합의 곱
4강 & 5강 1. 간소화 방법
대수적인 방법
- 대수적으로 적용하여 간소화
- 도표방법과 테이블 방법의 이론적 바탕
 
도표 방법
- 카르노 도표 사용, 부울함수의 각 항들을 곱이나 합 형태로 간소화
- 6개 변수를 가진 부울함수에 사용
 
테이블 방법
- 퀸-맥클러스키 방법, 테이블을 사용하여 간소화 알고리즘을 구현
- 많은 변수를 가진 부울함수에 적합
 
1. 카르노도표 방법의 개요
카르노 도표 : 여러개의 사각형으로 된 다이어그램
- 사각형 : 각각 하나의 최소항 또는 최대항
- 도표 내의 면적을 이용해 간소화 (정규형 부울함수 => 표준형 부울 함수)
- 간소화 형태 : 최소항의 합이 곱의 합, 최대항의 곱이 합의 곱 형태
- 부울함수의 입력변수의 수에 다라 기본 도표의 형태가 결정
- 입력변수의 수가 n인 경우, n 변수 카르노 도표라함 (사각형 : 2^n개)
 
2. 2, 3, 4변수 카르노 도표
무관조건 (카르노 도표 : x 로 표현)
- 정의 : 입력변수들의 조합에 따라 함수값이 발생하지 않는 경우
- 함수값이 0과 1 중 어떤 출력값이 나와도 무관한 경우
- 부울함수를 더욱 간소화
 
BCD 코드의 경우
- 2진수 16개 조합 중 10개 조합만 사용
- 나머지 6개 조합(1010,1011,1100,1101,1110,1111)은 미사용 => 발생하지 않는다는 가정 (무관하게 동작)
 
XOR의 카르노 도표
- 3변수 XOR 의 논리식
3변수 XOR : 한 변수가 1이거나 세 변수 모두 1인 경우
2변수 XOR : 오직 한 변수만 1인 경우
다중 변수 XOR(홀수함수) : 홀수개의 변수가 1
 
 
3. NAND와 NOR 게이트를 이용한 구현방법
- 실제 회로는 NAND와 NOR 게이트로 구현 (AND, OR 게이트에서 변환 필요)
- 전자회로로 제작이 용이 회로구성이 동일 게이트로 구성되는 것이 유리
6강 ~ 8강 1. 조합논리회로의 분석과 설계
분석 : 논리회로도 -> 출력부울함수, 진리표
- 논리회로에 대해 입출력 관계를 구하는 것
- 진리표나 부울함수 유도
 
설계 : 논리회로도 <- 출력부울함수, 진리표
- 문제에 대한 설명으로 논리회로도나 논리회로를 작성할 수 있는 부울함수 구하는 과정
 
2. 기본 연산회로
가산기 : 덧셈
- 2진수의 덧셈을 수행하는 조합논리회로

감산기 : 뺄셈
- 2진수의 뺄셈을 수행하는 조합논리회로

병렬 가/감산기

2진 감산 : 가산기를 사용하여 수행, 가산기만을 사용하여 전체 회로를 최소화
A-B 감산 : B의 2의 보수를 취해 A에 더함
- 2의 보수는 1의 보수를 취한 값의 최소 유효비트에 1을 더함
- 회로에서 1의 보수는 인버터를 이용, 가산기에 입력 올림수를 1로 하면 합의 값에 1을 더하여 2의 보수가 구해짐
승산기 : 곱셈
제산기 : 나눗셈
 
여러가지 조합논리회로 - 코드 변환기-
코드 변환기
- 하나의 2진 코드를 다른 2진 코드로 바꾸는 조합논리회로
- 디지털 시스템, 시스템들이 교환할 정보에 대해 서로 다른 코드를 사용하면 코드 변환이 필요
- 다양한 코드변환기 존재, BCD-3 초과 코드 변환기 / BCD-9의 보수 변환기
 
 
여러가지 조합논리회로 - 패리티 발생기/검사기-
- 2진 정보를 주고받을때 잡음이나 회로상의 문제로 에러 발생
- 에러 검출을 위해 전송되는 정보에 에러 검출용 비트(패리티 비트)를 추가해 전송
 
패리티 비트 이용 방식
짝수 패리티 검출 : 2진 정보 속에 1의 개수가 패리티 비트를 포함해 짝수
홀수 패리티 검출 : 2진 정보 속에 1의 개수가 패리티 비트를 포함해 홀수

여러가지 조합논리회로 -BCD-세븐 세그먼트 표시기-
-BCD-세븐 세그먼트 표시기
세븐 세그먼트를 이용하여 BCD코드의 10 표시를 나타내는 장치
- 표시장치의 숫자는 a, b, c, d, e, f, g 7개의 세그먼트로 구성


여러가지 조합논리회로 -인코더-

- 집적회로(IC) 사용, 패키지화된 IC 내부 게이트를 이용하면 경제적인 설계 가능
- 이미 만들어진 MSI(Medium Scale Integrated circuits)장치를 이용하면 다양한 조합논리회로의 설계가 가능

- 디지털, 효과적인 조합논리회로를 설계하기 위해서는 주어진 함수를 실현하는데 필요한 게이트의 수를 최소화할 필요
 
MSI장치의
- 인코더, 디코더, 멀티플렉서, 디멀티플렉서

- 인코더 : 부호화되지 않은 입력을 받아서 부호화된 출력을 내보내는 부호화기

여러가지 조합논리회로 -디코더-
디코더: 부호화된 입력을 받아서 부호화되지 않는 출력을 내보내는 복호화기
9강 ~ 11강

1. 순서논리회로의 개요(플립플롭과 종류)

조합논리회로 : 현재 시간의 입력에 의해 출력이 결정
순서논리회로 : 조합논리회로에 저장요소를 추가한 회로
순서논리회로 종류 : 비동기 순서논리회로, 동기 순서논리회로

비동기 순서회로
- 시간지연소자를 사용
- 기억능력 => 신호가 전달되려면 일정한 시간이 걸림
- 단점 : 논리게이트로 구성되는 시간지연소자는 게이트간의 피드백 때문에 예측 못한 상태로 동작하거나 불안정한 상태
 
동기 순서논리회로
- 클럭 펄스 (특정 순간에서만 저장요소를 내용을 변화시킬 수 잇는 신호)
- 클럭을 가진 순서논리회로 => 클럭 펄스를 시스템 전체에, 저장요소 입력에 클럭 펄스를 제공하는 동기 순서논리회로
- 플립플롭이라는 저장요소를 사용
 

2. 플립플롭

플립플롭(F/F : Flip Flop)
- 입력신호에 의해 상태를 바꾸도록 지시가 있을 때 현재 2진 상태를 유지하는 논리소자
- 한 비트의 2진 정보를 저장할 수 있는 장치
- 클럭 신호에 의해 출력 상태 변경
 
SR 래치
- 비동기 순서논리소자, 구동입력이 1일 때 출력이 바뀐다
- 두 개의 NOR 게이트나 두 개의 NAND 게이트로 구성
- 세트와 리셋의 두 입력을 가짐
 
RS 플립플롭, D 플립플롭, JK F/F, T F/F, 마스터-슬레이브 F/F
- 동기 순서논리소자, 클럭신호에 의해 출력이 바뀐다
 
RS 플립플롭
- SR 래치의 동작을 개선
- 클럭을 가진 SR 래치 (클럭을 가진 RS 플립플롭) : SR 래치가 한 클럭펄스 발생기간 동안 입력에 응답

 
D 플립플롭
- RS 플립플롭의 문제점 해결
- 미정 상태, 불필요한 상태를 제거 => S, R이 동시에 1을 갖지 않도록
JK 플립플롭
- RS 플립플롭의 문제점을 개량한 상태 => but 레이스 현상 발생
T 플립플롭 ( T : 토글에서 유래 )
- JK 플립플롭의 변화된 형태
- 두 입력을 하나로 묶어 만든 것

3. 플립플롭의 트리거링

트리거
- 플립플롭의 상태는 제어신호의 순간적인 변화에 따라 바뀜
- D 플립플롭은 제어입력으로 클럭펄스가 사용, 논리-1레벨로 변할 때마다 트리거가 된다
레벨 트리거 : 클럭펄스가 논리-1인 동안 내내 입력이 출력에 영향
에지 트리거 : 클럭펄스의 에지, 상승/하강 에지 동안 입력이 출력에 영향
- 상승 에지 : 클럭펄스에 있어서 논리상태가 논리-0 => 논리 -1
- 하강 에지 : 논리상태가 논리-1 => 논리-0

마스터-슬레이브 플립플롭
레이스 현상
- JK 플립플롭에서 발생, 입력 J, K 모두 1일 때 클럭펄스가 남아있게 되면 보수를 취하는 반복적인 현상
- 해결방안 : 에지 트리거, 마스터-슬레이브 플립플롭
 
마스터-슬레이브 플립플롭
정의
- 주(마스터)와 종(슬레이브)을 역할하는 두 개의 별도인 플립플롭으로 구성
- 기존의 플립플롭에 인버터를 추가하여 구성
- 동작원리 : 상승 에지 : 마스터를 세트, 하강에지 : 슬레이브에 신호를 전달
 

4. 순서논리회로의 분석 (=> 상태표 작성)

- 입출력 관계를 규명, 시간지연요소인 플립플롭이 포함되어 회로의 시간적 변화를 고려
- 회로동작의 시간적 변화 : 상태 (현재 상태, 다음 상태)로 표현
- 동작 : 입출력 상태와 플립플롭의 상태에 따라 결정 (플립플롭의 상태와 입출력 상태의 시간적 변화)
 
상태도
- 상태표를 그림으로, 회로의 상태변화를 도형으로 나타내어 회로분석을 보다 쉽게

5. 순서논리회로의 설계


1. 상태표 작성 : 주어진 설명 or 상태도로 작성
2. 플립플롭의 결정 : F/F 개수와 종류 결정
2-1. F/F 개수 결정 : 순서논리회로 내의 상태수로 결정
- 2^n의 상태를 표현하기 위해서는 n개의 F/F 필요
2-2. F/F 기호 할당 : F/F 종류 결정
- D : 데이터 전송 / T : 보수를 포함 / JK : 종류가 다양
3. 입력방정식
의미 : 조합논리회로의 출력, F/F 입력조건에 대한 부울함수
분석 : 입력방정식을 구해 상태표 작성 (현재-다음상태)
설계 : 현재-다음 상태, 입력조건 필요
 
4. F/F 여기표
12강 & 13강 1. 레지스터
- 데이터를(여러 비트) 일시 저장하거나 전송하는 장치
- 배열된 비트를 좌/우로 자리이동을 시키는데 사용
- 여러 개의 플립플롭을 연결하여 구성
- n 비트 레지스터는 n개의 플립플롭으로 구성, n 비트의 2진 정보를 저장
 
데이터 적재 레지스터
- D F/F 를 사용하여 구성
- 입력된 데이터를 그대로 기억하는 역할을 수행
 
2. 카운터
- 플립플롭을 사용해 만든 순서논리회로
- 외부의 입력이나 출력 X, 상태변화는 클럭펄스에 의해
- T F/F or JK F/F 이 사용
- 비동기식 2진 카운터, 동기식 10진 카운터 등으로 표현

3. 카운터의 설계
동기식 카운터 설계 => 순서논리회로 설계와 동일
14강 & 15강 기억장치의 개요
- 주기억장치 + 보조기억장치
- 처리할 프로그램과 데이터를 기억하거나 처리한 후의 결과를 기억하는 장치
- 단어 (2진 기억소자의 모임, 2진 비트들의 조합) : 2^n개의 비트, 위치는 주소로 부여
- 성능 : 액세스 타임(기억장치의 정보를 읽거나 기록하는 속도)에 좌우
- 반도체 메모리 : F/F 회로를 실리콘 칩에 고밀도로 집적화 (RAM/ROM)
- PLD : 읽기만 가능한 기억장치 (PLA, PAL)
 
RAM(Random Access Memory/RWM)
- 휘발성 메모리
- 임의의 기억장소에 사용자가 작성한 프로그램이나 데이터를 저장
- 필요할 때마다 그 내용을 읽어낼 수 있으며 자유롭게 변경
- SRAM : F/F로 구성, 고속의 액세스 타임, 캐시 메모리로 사용
- DRAM : 커패시터로 충전(refreshing)되는 전하의 형태로 정보 저장, 주기억장치로 사용

RAM 확장

- 개개의 RAM을 서로 연결하면 더 큰 용량의 기억장치 구성
 
기억용량 증가
- 단어의 수 증가 : 주소선의 비트 수를 늘려 단어를 선택하는 주소의 길이를 증가
- 비트 수 증가 : RAM을 병렬 연결
 
ROM(Read Only Memory)
- 고정된 2진 정보를 저장, 기록되어 있는 데이터를 읽어낼 수만 있는 기억장치
- 내용 변경 X, 전원 끊어도 내용 소멸 X
- 디코더와 여러 개의 OR 게이트로 구성 => 내부의 전자 퓨즈선으로 구성, 전원 유무에 상관 없이 유지
- 마스크 ROM : 한번 저장한 것은 내용 변경 X
- PROM : 사용자가 데이터를 써 넣을 수 있는 프로그래밍이 가능
- EPROM : 한번 쓴 내용 지우기 가능

PLD의 구조와 종류

- 프로그램이 가능한 전자 퓨즈선으로 연결된 게이트의 배열로 구성된 집적 회로
- AND 게이트와 OR 게이트의 배열 구조
- 논리요소들이 배열 형태로 내부 연결선을 프로그래밍

 

반응형
Comments