2021. 3. 27. 23:49ㆍComputer(인강)/컴퓨터 구조
안녕하세요 bannavi입니다^ㅅ^
지난 시간에 이어서 입출력 수행과 인터럽트에 대해서 살펴보도록 하겠습니다
바로 시작하겠습니다
# 입출력 장치와 CPU간 interrupt 논리
1. CPU와 I/O 장치 사이의 데이터 전송은 CPU에 의해 시작된다.
- 각 장치는 통신 준비 여부(제어라인의 상태 or 플래그(flag)에 의해서만 확인)에 따라 CPU와 통신이 가능
- 시스템 전체의 퍼포먼스를 위해 각 디바이스 인터페이스는 플래그가 인 에이블(enable)되었을 때 비로소 CPU에 인터럽트를 요청
2. 프로세서가 서비스 루틴으로 분기 주소를 선택하는 방법
- vectored interrupt
* 인터럽트를 내는 소스가 프로세서에게 분기에 대한 정보를 제공(인터럽트 벡터, interrupt vector)한다.
- Non-vectored interrupt
* 분기 주소는 메모리의 고정 위치에 저장되어 있다.
3. 수 많은 장치 중 인터럽트를 발생한 장치의 선별, 또한 동시에 발생한 다수개의 인터럽트의 경우 서비스의 우선 순위를 결정해야 하는 문제 발생
4. 우선 순위 인터럽트는 동시 다발적으로 발생한 인터럽트에 대한 서비스 순서를 결정하기 위해 각 소스에 우선 순위를 부여한 인터럽트 시스템을 이르는 용어이다.
- 우선 순위 결정은 소프트웨어/하드웨어적으로 처리
- 소프트웨어 적으로 인터럽트 우선 순위를 결정 하는 방법 -> 폴링(polling)
* 모든 인터럽트를 위한 공통의 서비스 프로그램 -> 소요시간이 매우 길 수 있다. -> H/W적으로 해결
# 데이지 체인 우선순위 인터럽트
- 인터럽트를 발생하는 모든 장치를 직렬로 연결 함으로써 이루어진다.
# 병렬 우선 순위 인터럽트
1. 각 장치의 인터럽트 요청에 따라 각 비트가 개별적으로 세트 될 수 있는 레지스터를 사용한다.
2. 우선순위 - 자기디스크, 라인 프린터, 카드 리더, 키보드 순(위치 순)
3. 마스크 레지스터 - 인터럽트 요청 상태를 조정 할 수 있는 장치
# 우선 순위 인코더&인터럽트 사이클
'Computer(인강) > 컴퓨터 구조' 카테고리의 다른 글
멀티 프로세서 2 (0) | 2021.03.28 |
---|---|
멀티 프로세서 1 (0) | 2021.03.28 |
입출력 수행과 인터럽트 1 (0) | 2021.03.27 |
입출력(I/O)연결과 주소 지정 (0) | 2021.03.27 |
시스템 BUS 구성 및 제어 2 (0) | 2021.03.27 |