본문 바로가기
3. 개발 관련/정리 :: issue 와 resovle

구현 기능 및 계획

by kyuho.choi 2009. 11. 17.
728x90
반응형

간간히 정리해가며 논문 작업을 진행하기로 결정,

1. 구현 기능 명세

 - 구현 범위 : MI(Maskable Interrupt)로 한정, NMI 의 경우 fast interrupt 로 다루며 이는 발생시에 최대한 빠른 수행을 보장하도록 설정


 - Mode 기능 지원

  - Fast ISR Mode :  인터럽트 선점 가능

    - ISR Scheduling : MI 인터럽트 간의 인터럽트 스케줄링 기능, 인터럽트 간 우선순위를 기준으로 스케줄링 실행, 별도의 타임퀀텀 없으며, ISR Pending, ISR Init, ISR resume, ISR Start, ISR End 등의 기능을 이용하여 인터럽트를 직접 제어,

   - ISR Pending :  ISR 정지
   - ISR Init :  ISR 초기화
   - ISR Resume :  ISR 재가동
   - ISR Start :  ISR 수행 시작
   - ISR End :  ISR 수행 정지


  - Slow ISR Mode :  인터럽트 선점 불가능

    - ISR Scheduling : MI 인터럽트 간의 인터럽트 스케줄링 기능, 인터럽트 간 발생 시점을 기준으로 스케줄링 실행, 별도의 타임퀀텀 없으며,  ISR Init, ISR Start, ISR End 등의 기능을 이용하여 인터럽트를 직접 제어,

   - ISR Init :  ISR 초기화
   - ISR Start :  ISR 수행 시작
   - ISR End :  ISR 수행 정지


 - Interrupt Service Thread 

   - ISR 의 원활한 수행 및 제어를 지원하기 위하여 ISR 마다 수행 스레드를 지정하여, 실제 ISR 수행 코드 부분을 thread 로 맵핑하여 수행, (멀티스레드 환경 OS 에서만 사용 가능)
  

2. ISR 테스트 범위

 - MI 인터럽트 : MI 인터럽트 중 OS에서 디폴트로 사용하지 않는 Interrupt vector 사용 (ex. port1 / port2 / usart0tx / usart1tx)

 - 각 인터럽트 벡터에 대한 맵핑 스레드 지정,
 - 각 인터럽트 벡터에 대한 Mode 기능 구현
 - 각 인터럽트 벡터에 대한 스케줄링 구현


3. 실험 및 평가

 - 퍼포먼스 측정 : 다수의 인터럽트 발생(MI)이 가능한 경우, 직접 측정, 다수의 인터럽트 발생(MI)이 어려운 경우 각 case 별 퍼포먼스를 측정하여 이를 시뮬레이션 수행

728x90
반응형

댓글