위로
아래


Bus
Bus
- 역할 : 각 컴포넌트 사이에서 데이터 통신을 위한 통로
- 컴포넌트 : CPU, 메모리, I/O 장치 등
- 예시 : CPU(컴포넌트)가 처리한 데이터들이 모니터(컴포넌트)에 출력되거나 메모리(컴포넌트)에 저장되기 위해서 각 컴포넌트 끼리 데이터 통신을 도움
- 종류
- System Bus : CPU와 메모리를 연결하는 Subsystem
- I/O Bus : 메모리와 다른 입출력 장치와 통신하는 Subsystem
System Bus
System Bus가 전송할 수 있는 정보의 3가지 타입

데이터 버스 (Data Bus)
- 쓰는 경우에는 쓰고자 하는 데이터 값
- CPU 내부 모듈들 간의 사이, CPU와 메인 메모리(RAM) 사이, RAM과 입출력 장치 사이에서 데이터가 이동하는 경로
- 양방향 데이터 정보 전송
주소 버스 (Address Bus)
- 데이터를 쓰거나 읽고자 하는 주기억 장치의 주소값
- CPU가 사용하고자 하는 데이터가 위치한 주소 정보가 이동하는 경로
- CPU -> 메모리 단방향 주소 정보 전송
컨트롤 버스 (Control Bus)
- 기억장치 읽기/쓰기 신호
- CPU에서 발생하는 제어 명령이나 상태 신호 정보가 이동하는 경로
- Read & Write 신호 전달
구성 요소간의 통신 과정
CPU <-> Memory
- Load 과정
- Address Bus : 메모리에서 불러올 데이터가 저장된 주소값 전달 (CPU -> Memory)
- Control Bus : Memory Read 신호 전달 (CPU -> Memory)
- Data Bus : 메모리의 해당 주소에 저장된 값 전달 (Memory -> CPU)
- Store 과정
- Address Bus : 메모리에서 해당 데이터를 저장할 주소값 전달 (CPU -> Memory)
- Control Bus : Memory Write 신호 전달 (CPU -> Memory)
- Data Bus : 저장할 데이터 전달 (CPU -> Memroy)
CPU <-> I/O Unit
- Input 과정
- Address Bus : 해당 입출력 장치의 포트 번호 전달 (CPU -> I/O Unit)
- Control Bus : I/O Read (Input) 신호 전달 (CPU -> I/O Unit)
- Data Bus : 해당 입출력 장치에서 데이터 전달 (I/O Unit -> CPU)
- Output 과정
- Address Bus : 해당 입출력 장치의 포트 번호 전달 (CPU -> I/O Unit)
- Control Bus : I/O Write (Output) 신호 전달 (CPU -> I/O Unit)
- Data Bus : 해당 입출력 장치에 데이터 전달 (CPU -> I/O Unit)
- Inputerrupt 과정
- Control Bus : I/O Wtire 또는 Read 인터럽트 요청 (I/O Unit -> CPU)
- Control Bus : I/O Write 또는 Read 신호 전달 (CPU -> I/O Unit)
Interrupt

인터럽트
- CPU의 정상적인 프로그램 실행을 방해하고 요청을 보내는 것
- 인터럽트를 받으면 CPU는 일을 중단하고 요청 받은 일을 처리한다
- 종류
- 내부 인터럽트
- 외부 인터럽트
내부 인터럽트
- 하드웨어 고장
- 컴퓨터 고장
- 데이터 전달 과정에서의 bit 오류
- 전원 off 경우
- 실행할 수 없는 명령어 : 기억장치에서 인출한 명령어의 비트 패턴이 정의되어 있지 않은 경우
- 명령어 실행 오류 : 나누기 0을 하는 경우
- 사용 권한 위배 : 사용자가 운영체제만 사용할 수 있는 자원에 액세스하는 경우
외부 인터럽트
- 입출력 장치에 의해 발생하는 경우
- 타이머 인터럽트 : 타이머가 일정한 시간 간격으로 CPU에게 인터럽트 요청
- 입출력 인터럽트 : I/O 장치가 CPU에게 입출력 준비가 완료되었음을 알리기 위해 인터럽트 요
참고 : https://kangmanjoo.tistory.com/171
[CA] - 시스템 버스(Bus)란?
컴퓨터 구조에서 버스(Bus)란 CPU, 메모리, I/O 장치 사이의 정보 전송을 위한 통로입니다.이 통로를 통해 컴퓨터의 하드웨어 장치들은 데이터를 주고받고, 버스를 통한 데이터 전송 속도가 시스템
kangmanjoo.tistory.com
참고 : https://whatisthenext.tistory.com/147
[컴퓨터구조] 인터럽트(Interrupt)란?
인터럽트 개요 2017년 컴퓨터구조 과목을 수강하면서 가장 많이 나온 단어가 인터럽트가 아닐까 싶다. 외부 인터럽트, 내부 인터럽트 인터럽트 서비스, 인터럽트 서비스 루틴, 인터럽트 핸들러,
whatisthenext.tistory.com