DMA, Interrupt 에 관한 모든것!!!
본 자료는 3페이지 의 미리보기를 제공합니다. 이미지를 클릭하여 주세요.
닫기
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
해당 자료는 3페이지 까지만 미리보기를 제공합니다.
3페이지 이후부터 다운로드 후 확인할 수 있습니다.

소개글

DMA, Interrupt 에 관한 모든것!!!에 대한 보고서 자료입니다.

목차

1. Interrupt 에 관한 모든 것
<interrupt 의미>
<interrupt 구성>
<interrupt 발생 원인>
<interrupt 구분>
<interrupt 처리>
<interrupt 판별>
▶소프트웨어적 방법
▶하드웨어적 방법
▶병렬 우선 순위(다중 회선)
<IRQ(Interrupt Request Line) 정의 >
<Installing an Interrupt Handler>
<Implementing a Handler>
<Tasklets and Bottom-Half Processing>
▶Top-half
▶ Bottom-half
▶ Top-half 와 Bottom-half 차이점
▶ Tasklets
▶ Tasklets 선언 매크로
▶The BH bottom halves
<Interrupt Sharing>

2. DMA 에 관한 모든 것
<DMA>
▶ DMA의 개념
▶ CPU를 Idle 상태에 있도록하는 방법
▶ DMA를 이용한 메모리 전송방법
<DMA 제어기>
▶ DMA 제어기의 구성
▶ DMA 제어기의 블록도
▶ CPU의 DMA 초기화
<DMA 전송>
▶ 컴퓨터 시스템에서 DMA 연결
▶ DMA 제어기의 채널

본문내용

모든 것

▶ DMA의 개념
- 자기 디스크와 같은 고속 저장장치와 메모리 사이의 데이타 전송은 CPU에 의해 속도가 제한될 수 있다
- 이 데이타 경로에서 CPU를 제거하고 주변장치가 직접 메모리 버스를 관리하여 전송속도 향상
- DMA 전송 수행동안 CPU는 메모리 버스를 제어하지 못하고 쉬게 된다
▶ CPU를 Idle 상태에 있도록하는 방법
특별한 제어신호를 통하여 버스를 Disable시키는 방법
- 아래 그림에서 DMA전송을 위한 CPU의 두 제어신호가 표시
< DMA 전송을 위한 CPU 버스신호>
동작
- 버스요구 입력은 DMA 제어기가 CPU에게 버스제어를 포기하도록 요청하는 신호
- 이 신호가 활성화되면 CPU는 현재의 명령실행을 끝내고, 주소버스, 데이타버스, R/W 제어라인을 고저항 상태로 전이
- CPU는 버스승인 출력(BUS Grant;BG)을 통하여 버스가 고저항 상태임을 표시
- 요청신호를 낸 DMA가 버스의 제어를 장악하고 메모리전송을 수행
- DMA전송이 완료되면 버스요구를 디제이블하고, CPU가 버스승인을 Disable 하여
정상으로 복귀
▶ DMA를 이용한 메모리 전송방법
DMA 대량 전송(Burst Transfer)
- DMA 제어기가 메모리 버스를 제어하고 있는 동안 여러개의 메모리 워드로 구성된 블럭이 지속적으로 전송
- 자기 디스크를 위해 사용
Cycle Stealing
- DMA 제어기가 한번에 한 데이타 워드를 전송하고 버스의 전송을 CPU에게 변환
- CPU측에서는 자신의 동작의 지연없이 한번의 메모리 사이클을 빼앗긴다

▶ DMA 제어기의 구성
- CPU와 I/O 장치간의 통신을 위한 인터페이스 회로
- 레지스터와 주소라이인은 메모리와 직접 통신을 위해 사용
- 워드 카운터 레지스터는 전송되어야 할 워드의 주소를 표시
▶ DMA 제어기의 블럭도
< DMA 제어기의 블록도 >
동작
- 데이타 버스와 제어라인을 통해 CPU와의 통신을 수행
- CPU는 DS(DMA선택)와 RS(레지스터 선택) 입력을 이용하여 DMA에 있는 레지
스터를 선택
- RD(읽기)와 WR(쓰기) 입력은 양방향으로 동작
- BG=0일 때는 CPU와 DMA 레지스터 사이의 정보교환
- BG=1일 때는 DMA가 직접 주소지정하고, RD,WR제어를 활성화하여 메모리와 통신
- DMA는 핸드셰이킹 절차에 따라 요구와 승락라인을 통해 외부장치와 통신
DMA의 3개의 레지스터의 기능
- 주소 레지스터의 메모리 주소는 버스버퍼를 통해 주소버스로 가며, 한 워드 전송시 한 워드씩 증가
- 워드 카운터 레지스터는 한 워드의 전송 때마다 감소되어 0과 비교
- 제어 레지스터는 전송모드를 지정하는 데 사용
▶ CPU의 DMA 초기화
- 데이타가 존재(읽기)하거나 저장(쓰기)될 메모리 블럭의 시작주소
- 메모리 블럭의 워드수를 나타내는 워드 카운터
- 읽기나 쓰기같은 전송모드를 지정하는 제어
- DMA 전송을 시작하는 제어

▶ 컴퓨터 시스템에서 DMA 연결
< 컴퓨터 시스템에서의 DMA전송 >
DMA의 초기화
- CPU는 주소와 데이타 버스를 이용하여 DMA와 통신
- DMA는 자신의 주소를 받아 DS와 RS 입력을 활성화
- CPU는 데이타 버스를 통해 DMA를 초기화
동작
- 주변장치가 DMA요구를 보내면 DMA 제어기가 BR을 활성화하여 CPU에 포기신호
보냄
- CPU는 BR을 통해 버스 디제이블을 DMA에 알림
- DMA는 현재 주소 레지스터 값을 주소버스에 출력
- RD 또는 WR신호를 활성화하여 주변장치로 DMA 승락을 보냄
- BG=0이면 RD, WR라인은 입력라인이 되어 CPU가 DMA의 내부 레지스터와 통신
- BG=1이면 RD,WR라인은 출력라인이 되어 DMA제어기와 메모리간의 읽기와 쓰기
동작지정
주변장치와 DMA사이의 동작
- 주변장치가 DMA승락을 받으면 메모리와 데이타 전송가능
- 매 워드가 전송될 때마다 DMA는 주소 레지스터를 하나 증가시키고, 워드 카운터를 하나 감소시킴
- 워드 카운터가 0이 아닌동안 DMA는 주변장치로부터의 요구라인을 검사
- 고속 주변장치에서는 이전의 전송이 끝나자마자 요구라인을 활성화, 저속의 주변 장치에서는 요구라인이 활성화될 때까지 CPU의 프로그램 수행
최종동작
- 워드 카운터가 0이면 DMA전송을 중단하고, 버스요구 제거
- 인터럽트를 이용하여 CPU에 전송이 끝났음을 알림
- CPU는 인터럽트에 응답하여 워드 카운터를 읽어와서 성공적으로 모든 워드가 전송되었는지를 확인
▶ DMA 제어기의 채널
- 각 채널은 독립된 주변장치에 연결된 요구와 승락 제어신호를 가진다
- 고유의 주소 레지스터와 워드 카운터 레지스터를 갖는다
- 채널들 사이에 우선순위를 부여하여 서비스의 우선권을 부여한다
< 목 차 >
1. Interrupt 에 관한 모든 것






▶소프트웨어적 방법
▶하드웨어적 방법
▶병렬 우선 순위(다중 회선)




▶Top-half
▶ Bottom-half
▶ Top-half 와 Bottom-half 차이점
▶ Tasklets
▶ Tasklets 선언 매크로
▶The BH bottom halves

2. DMA 에 관한 모든 것

▶ DMA의 개념
▶ CPU를 Idle 상태에 있도록하는 방법
▶ DMA를 이용한 메모리 전송방법

▶ DMA 제어기의 구성
▶ DMA 제어기의 블록도
▶ CPU의 DMA 초기화

▶ 컴퓨터 시스템에서 DMA 연결
▶ DMA 제어기의 채널

키워드

DMA,   IRQ,   interrupt,   인터럽트,   tophalf,   bottomhalf
  • 가격1,500
  • 페이지수10페이지
  • 등록일2004.11.17
  • 저작시기2004.11
  • 파일형식한글(hwp)
  • 자료번호#273826
본 자료는 최근 2주간 다운받은 회원이 없습니다.
청소해
다운로드 장바구니