본문 바로가기
공부/컴퓨터구조

[4주차]디지털 논리 회로-조합 논리 회로,집적 회로 /중앙 처리 장치~

by IT공부방 2021. 4. 3.

<이번주 중요한 개념>

★조합논리회로 유형별 개념

★부스알고리즘

★시프트연산

 

 

1. 조합 논리 회로

 

1) 반가산기와 전가산기

- 반가산기 : 1자리 2진수 2개를 입력하여 캐리 출력 -> 캐리 발생x

  --> xor게이트와 and게이트

- 전가산기 : 1자리 2진수 3개를 더하는 조합 논리 회로 -> 캐리 발생o

  --> 반가산기 게이트 2개와 or게이트

2) 반감산기와 전감산기

- 반감산기 : 1비트 2진수 A에서 B를 빼서 그 차와 빌림 수를 계산하는 뺄셈회로

  --> 반가산기게이트에서 not게이트 추가

- 전감산기 : 2진수 입력 A,B와 아랫자리로 빌려주는 수 Ki를 포함하여 A-B-Ki를 계산하는 조합논리 회로

  --> 반감산기게이트 2개와 or게이트

 

 

2. 집적 회로

: 작은 실리콘 칩에 저항, 커패시터, 다이오드, 트랜지스터 등 전자 부품을 여러 공정을 거쳐 내부적으로 상호 연결한 것.

 

1) 제작과정(페이지 158쪽)

다이싱 -> 본딩 -> 패키징

2) 디지털 논리군 - 적용 기술에 따라 분류

- TTL : 최근까지 많이 사용 / 기본회로 NAND게이트

- ECL : 슈퍼컴퓨터 신호처리기 / 기본회로 NOR게이트

- MOS : 부품의 밀도가 높은 집적회로, 금속화물반도체

- CMOS : 회로의 밀도가 높고 제조공정 단순, 전력소비 적음 / 휴대폰과 손목시계

★ TTL vs CMOS 비교

  TTL CMOS
전파지연
소비전력
잡음여유도
기타 온도에 따라 전압변함 구조간단,집적쉬움,단가감소

3) IC 패키지

: PCB에 장착하는 방법에 따라 삽입 장착형, 표면 실장형으로 구분

- 삽입 장착형 IC : DIP 형태

- 표면 실장형 IC : SOIC, QFP, PLCC 형태 / 삽입 장착형보다 가격, 크기, 무게가 낮다

 


Chap 4. 중앙처리 장치

1. 프로세서 구성과 동작

 

1) 프로세서 구성요소

- 산술 논리 연산장치 : 기본 연산 수행

- 제어 장치 : 메모리에서 명령어를 가져와 해독하고 실행에 필요한 장치들을 제어하는 신호를 발생

- 레지스터 세트 : 프로세서 내에 존재하는 매우 빠른 메모리 / 용량은 작음 / 임시저장장치

  - 목적에 따라 특수 레지스터와 범용 레지스터로 분류

2) 프로세서 기본 구조를 간단하게 살펴보기

- 주기억장치의 주소 50에 데이터 쓰기

- 주소버스는 주기억장치 주소 50을 향하게 한다.

- 데이터버스는 주소 50에 쓸 데이터 20을 가진다.

- 제어버스는 읽기와 쓰기 중 쓰기를 가진다.

 

- 주기억장치 주소 60에 저장된 데이터 읽기

- 주소버스는 주기억장치 주소 60을 가져온다.

- 데이터버스는 주소60에 있는 데이터 30을 읽어온다.

- 제어버스는 읽기와 쓰기 중 읽기를 가진다.

 

2. 산술 논리 연산 장치 : 말그대로 cpu에서 연산하는 장치이다.

 

1) 연산 종류

- 산술 연산 : 덧셈, 뺄셈, 곱셈, 나눗셈, 증가, 감소, 보수 등

  --> 뺄셈의 경우 2의 보수를 만든 후 더하여 계산한다.

- 논리 연산 : AND, OR, NOT, XOR, ★SHIFT

2) 부스 알고리즘

q0과 A의 초기값은 0이다.

n은 비트 수를 의미하는데 비트수가 0이 될때까지 반복한다.

n=0이 되면 AQ를 계산하며 마무리된다.

참고로 Arithmetic shift right AQq0은 오른쪽 산술 시프트 연산을 말한다.

3) 시프트 연산

- 산술 시프트연산

  왼쪽 오른쪽
산술 시프트 연산   00010110 10010110
      00101100-->빈자리부호  빈자리부호<-- 11001011

- 논리 시프트연산

  왼쪽 오른쪽
논리 시프트 연산 00010110 10010110
00101100-->빈자리는 0으로 빈자리는 0으로<--01001011

- 회전 시프트연산

  왼쪽 오른쪽
회전 시프트 연산 00010110 10010110
00101100-->오른쪽으로 로테이션 왼쪽으로 로테이션<--01001011

 

 

3. 레지스터

- cpu가 사용하는 데이터와 명령어를 신속하게 읽어 오고 저장하고 전송한다.

- 메모리 계층의 최상위에 있으며, 매우 빠른 메모리이다.

- 데이터 레지스터는 보통 8~32개, 많으면 128개 이상이다.

- 특수 레지스터는 8~16개 정도된다.

1) 레지스터 종류

- 프로그램 카운터 : 다음에 실행할 명령어의 주소 저장

- 명령어 레지스터 : 기억장치로부터 읽어온 명령어를 수행하기 위해 일시적 저장

 

-기억장치 주소 레지스터 : 다음에 읽기 동작이나 쓰기 동작을 수행할 기억장소의 주소를 저장하는 주소저장용 레지스터

- 기억장치 버퍼 레지스터 : 기억장치에 저장될 데이터 혹은 기억장치로부터 읽은 데이터 임시 저장

 

- 입/출력 주소 레지스터 : 입/출력장치의 주소를 저장하는 주소 레지스터

- 입/출력 버퍼 레지스터 : 입/출력 모듈과 cpu사이에 교환되는 데이터를 일시적으로 저장

++ 이외에도 매우 많은 레지스터 종류가 존재한다.

2) 레지스터의 전송

- LOAD : 주기억장치에서 레지스터로 데이터를 읽음

- STORE : 레지스터에서 주기억장치로 데이터를 저장 

- MOVE : 레지스터에서 레지스터로 데이터를 이동

 

 

 

 

 

<내가 만든 문제>

Q. 8비트인 '0110 1010'을 오른쪽으로 산술 시프트한 결과는?