DMA: Difference between revisions
From CS Wiki
No edit summary |
No edit summary |
||
Line 1: | Line 1: | ||
;Direct Memory Access | ;Direct Memory Access | ||
;[[입출력 장치]]가 [[중앙처리장치|CPU 레지스터]]를 경유하지 않고 직접 [[주기억장치]]에 접근하여 입출력을 수행하는 방식 | ;[[입출력 장치]]가 [[중앙처리장치|CPU 레지스터]]를 경유하지 않고 직접 [[주기억장치]]에 접근하여 입출력을 수행하는 방식 | ||
== 특징 == | |||
* 블록으로 대용량의 데이터를 전송할 수 있다. | |||
* CPU레지스터를 거치지 않아 CPU의 부하가 적고 속도가 빠르다. | |||
* [[싸이클 스틸|싸이클 스틸(Cycle Steal)]] 방식을 이용하여 데이터를 전송한다, | |||
== 구성 요소 == | == 구성 요소 == |
Revision as of 08:07, 7 May 2019
특징
- 블록으로 대용량의 데이터를 전송할 수 있다.
- CPU레지스터를 거치지 않아 CPU의 부하가 적고 속도가 빠르다.
- 싸이클 스틸(Cycle Steal) 방식을 이용하여 데이터를 전송한다,
구성 요소
- 주소 레지스터(Address Register)
- 주소 라인(Address Line)
- 워드 카운트 레지스터(Word Count Register)
- 데이터 레지스터(Data Register)
입력 정보
- 일반적으로 CPU가 DMA 제어기로 보내는 정보
- I/O 장치의 주소
- 연산(쓰기 혹은 읽기)지정자
- 데이터가 있는 주기업장치 주소
- 전송될 데이터 단어들의 수
전송 절차
- 버스 사용 요구(bus request)
- 버스 사용 허가(bus grant)
- 데이터 전송(data transfer)
- 인터럽트(interrupt)